aboutsummaryrefslogtreecommitdiffstats
path: root/target
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
commiteb1049c8c0575bd4770e7af9e1f4d5d974ef36b5 (patch)
tree474de4d091af75a1de587fb70aaf1df461c452b4 /target
parentee8e2b723ea18b95c976d85dd17fca65209057fc (diff)
downloadmaster-187ad058-eb1049c8c0575bd4770e7af9e1f4d5d974ef36b5.tar.gz
master-187ad058-eb1049c8c0575bd4770e7af9e1f4d5d974ef36b5.tar.bz2
master-187ad058-eb1049c8c0575bd4770e7af9e1f4d5d974ef36b5.zip
kernel: disable soft-reset for generic PHY devices to avoid accidentally clearing preinitialized state
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43757 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target')
-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,