This is a note to let you know that I've just added the patch titled

    i2c: mv64xxx: Fix bus hang on A0 version of the Armada XP SoCs

to the 3.12-stable tree which can be found at:
    
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     i2c-mv64xxx-fix-bus-hang-on-a0-version-of-the-armada-xp-socs.patch
and it can be found in the queue-3.12 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From 6cf70ae928bae17077efc0d528dec49bc380438b Mon Sep 17 00:00:00 2001
From: Gregory CLEMENT <[email protected]>
Date: Tue, 31 Dec 2013 16:59:33 +0100
Subject: i2c: mv64xxx: Fix bus hang on A0 version of the Armada XP SoCs

From: Gregory CLEMENT <[email protected]>

commit 6cf70ae928bae17077efc0d528dec49bc380438b upstream.

The first variants of Armada XP SoCs (A0 stepping) have issues related
to the i2c controller which prevent to use the offload mechanism and
lead to a kernel hang during boot.

The commit introduces a new the compatible string
marvell,mv78230-a0-i2c for the i2c controller. When this compatible
string is used the driver disables the offload mechanism and the
kernel no more hangs on these SoCs.

Signed-off-by: Gregory CLEMENT <[email protected]>
Reported-by: Andrew Lunn <[email protected]>
Acked-by: Wolfram Sang <[email protected]>
Acked-by: Arnd Bergmann <[email protected]>
Fixes: 930ab3d403ae (i2c: mv64xxx: Add I2C Transaction Generator support)
Signed-off-by: Jason Cooper <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

---
 drivers/i2c/busses/i2c-mv64xxx.c |    5 +++++
 1 file changed, 5 insertions(+)

--- a/drivers/i2c/busses/i2c-mv64xxx.c
+++ b/drivers/i2c/busses/i2c-mv64xxx.c
@@ -692,6 +692,7 @@ static const struct of_device_id mv64xxx
        { .compatible = "allwinner,sun4i-i2c", .data = &mv64xxx_i2c_regs_sun4i},
        { .compatible = "marvell,mv64xxx-i2c", .data = 
&mv64xxx_i2c_regs_mv64xxx},
        { .compatible = "marvell,mv78230-i2c", .data = 
&mv64xxx_i2c_regs_mv64xxx},
+       { .compatible = "marvell,mv78230-a0-i2c", .data = 
&mv64xxx_i2c_regs_mv64xxx},
        {}
 };
 MODULE_DEVICE_TABLE(of, mv64xxx_i2c_of_match_table);
@@ -783,6 +784,10 @@ mv64xxx_of_config(struct mv64xxx_i2c_dat
                drv_data->errata_delay = true;
        }
 
+       if (of_device_is_compatible(np, "marvell,mv78230-a0-i2c")) {
+               drv_data->offload_enabled = false;
+               drv_data->errata_delay = true;
+       }
 out:
        return rc;
 #endif


Patches currently in stable-queue which might be from 
[email protected] are

queue-3.12/ata-sata_mv-fix-disk-hotplug-for-armada-370-xp-socs.patch
queue-3.12/ata-sata_mv-introduce-compatible-string-marvell-armada-370-sata.patch
queue-3.12/arm-mvebu-add-support-to-get-the-id-and-the-revision-of-a-soc.patch
queue-3.12/i2c-mv64xxx-document-the-newly-introduced-armada-xp-a0-compatible.patch
queue-3.12/arm-mvebu-update-the-sata-compatible-string-for-armada-370-xp.patch
queue-3.12/i2c-mv64xxx-fix-bus-hang-on-a0-version-of-the-armada-xp-socs.patch
queue-3.12/arm-mvebu-add-quirk-for-i2c-for-the-openblocks-ax3-4-board.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to