Author: nbd
Date: 2014-12-20 16:26:38 +0100 (Sat, 20 Dec 2014)
New Revision: 43757

Added:
   trunk/target/linux/generic/patches-3.14/704-phy-no-genphy-soft-reset.patch
   trunk/target/linux/generic/patches-3.18/704-phy-no-genphy-soft-reset.patch
Log:
kernel: disable soft-reset for generic PHY devices to avoid accidentally 
clearing preinitialized state

Signed-off-by: Felix Fietkau <[email protected]>

Added: 
trunk/target/linux/generic/patches-3.14/704-phy-no-genphy-soft-reset.patch
===================================================================
--- trunk/target/linux/generic/patches-3.14/704-phy-no-genphy-soft-reset.patch  
                        (rev 0)
+++ trunk/target/linux/generic/patches-3.14/704-phy-no-genphy-soft-reset.patch  
2014-12-20 15:26:38 UTC (rev 43757)
@@ -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,

Added: 
trunk/target/linux/generic/patches-3.18/704-phy-no-genphy-soft-reset.patch
===================================================================
--- trunk/target/linux/generic/patches-3.18/704-phy-no-genphy-soft-reset.patch  
                        (rev 0)
+++ trunk/target/linux/generic/patches-3.18/704-phy-no-genphy-soft-reset.patch  
2014-12-20 15:26:38 UTC (rev 43757)
@@ -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,
_______________________________________________
openwrt-commits mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits

Reply via email to