aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-12-20 15:26:38 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-12-20 15:26:38 +0000
commit570fe5c662f855d6ee14a2ae761b3f63ad92c7ae (patch)
tree7a8ddcd169d1c1e61a6397d6973154fa51d86fc5 /target/linux
parentc12ac30870a6e68dc3ebaf025275c6885cbb9285 (diff)
downloadupstream-570fe5c662f855d6ee14a2ae761b3f63ad92c7ae.tar.gz
upstream-570fe5c662f855d6ee14a2ae761b3f63ad92c7ae.tar.bz2
upstream-570fe5c662f855d6ee14a2ae761b3f63ad92c7ae.zip
kernel: disable soft-reset for generic PHY devices to avoid accidentally clearing preinitialized state
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 43757
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/generic/patches-3.14/704-phy-no-genphy-soft-reset.patch29
-rw-r--r--target/linux/generic/patches-3.18/704-phy-no-genphy-soft-reset.patch29
2 files changed, 58 insertions, 0 deletions
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
index 0000000000..8e83a773b3
--- /dev/null
+++ b/target/linux/generic/patches-3.14/704-phy-no-genphy-soft-reset.patch
@@ -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
index 0000000000..c2554158e3
--- /dev/null
+++ b/target/linux/generic/patches-3.18/704-phy-no-genphy-soft-reset.patch
@@ -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,