kernel: disable soft-reset for generic PHY devices to avoid accidentally clearing...
authorFelix Fietkau <nbd@openwrt.org>
Sat, 20 Dec 2014 15:26:38 +0000 (15:26 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Sat, 20 Dec 2014 15:26:38 +0000 (15:26 +0000)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 43757

target/linux/generic/patches-3.14/704-phy-no-genphy-soft-reset.patch [new file with mode: 0644]
target/linux/generic/patches-3.18/704-phy-no-genphy-soft-reset.patch [new file with mode: 0644]

diff --git a/target/linux/generic/patches-3.14/704-phy-no-genphy-soft-reset.patch b/target/linux/generic/patches-3.14/704-phy-no-genphy-soft-reset.patch
new file mode 100644 (file)
index 0000000..8e83a77
--- /dev/null
@@ -0,0 +1,29 @@
+--- a/drivers/net/phy/phy_device.c
++++ b/drivers/net/phy/phy_device.c
+@@ -1102,7 +1102,7 @@ static int genphy_config_init(struct phy
+       return 0;
+ }
+-static int gen10g_soft_reset(struct phy_device *phydev)
++static int no_soft_reset(struct phy_device *phydev)
+ {
+       /* Do nothing for now */
+       return 0;
+@@ -1282,7 +1282,7 @@ static struct phy_driver genphy_driver[]
+       .phy_id         = 0xffffffff,
+       .phy_id_mask    = 0xffffffff,
+       .name           = "Generic PHY",
+-      .soft_reset     = genphy_soft_reset,
++      .soft_reset     = no_soft_reset,
+       .config_init    = genphy_config_init,
+       .features       = 0,
+       .config_aneg    = genphy_config_aneg,
+@@ -1294,7 +1294,7 @@ static struct phy_driver genphy_driver[]
+       .phy_id         = 0xffffffff,
+       .phy_id_mask    = 0xffffffff,
+       .name           = "Generic 10G PHY",
+-      .soft_reset     = gen10g_soft_reset,
++      .soft_reset     = no_soft_reset,
+       .config_init    = gen10g_config_init,
+       .features       = 0,
+       .config_aneg    = gen10g_config_aneg,
diff --git a/target/linux/generic/patches-3.18/704-phy-no-genphy-soft-reset.patch b/target/linux/generic/patches-3.18/704-phy-no-genphy-soft-reset.patch
new file mode 100644 (file)
index 0000000..c255415
--- /dev/null
@@ -0,0 +1,29 @@
+--- a/drivers/net/phy/phy_device.c
++++ b/drivers/net/phy/phy_device.c
+@@ -1132,7 +1132,7 @@ int genphy_config_init(struct phy_device
+       return 0;
+ }
+-static int gen10g_soft_reset(struct phy_device *phydev)
++static int no_soft_reset(struct phy_device *phydev)
+ {
+       /* Do nothing for now */
+       return 0;
+@@ -1346,7 +1346,7 @@ static struct phy_driver genphy_driver[]
+       .phy_id         = 0xffffffff,
+       .phy_id_mask    = 0xffffffff,
+       .name           = "Generic PHY",
+-      .soft_reset     = genphy_soft_reset,
++      .soft_reset     = no_soft_reset,
+       .config_init    = genphy_config_init,
+       .features       = PHY_GBIT_FEATURES | SUPPORTED_MII |
+                         SUPPORTED_AUI | SUPPORTED_FIBRE |
+@@ -1361,7 +1361,7 @@ static struct phy_driver genphy_driver[]
+       .phy_id         = 0xffffffff,
+       .phy_id_mask    = 0xffffffff,
+       .name           = "Generic 10G PHY",
+-      .soft_reset     = gen10g_soft_reset,
++      .soft_reset     = no_soft_reset,
+       .config_init    = gen10g_config_init,
+       .features       = 0,
+       .config_aneg    = gen10g_config_aneg,