diff options
author | Daniel Golle <daniel@makrotopia.org> | 2018-07-31 04:50:38 +0200 |
---|---|---|
committer | Daniel Golle <daniel@makrotopia.org> | 2018-07-31 05:39:49 +0200 |
commit | 20c64dabb67b210c1148820e626fbe0b1dc994f6 (patch) | |
tree | ab69747ada6cb546088e3757edd442a0c055a3ff /target/linux/ar71xx | |
parent | 93782d5e8e49931377dc69c654baf50ea7014870 (diff) | |
download | upstream-20c64dabb67b210c1148820e626fbe0b1dc994f6.tar.gz upstream-20c64dabb67b210c1148820e626fbe0b1dc994f6.tar.bz2 upstream-20c64dabb67b210c1148820e626fbe0b1dc994f6.zip |
kernel: re-add patch for AT8032 Ethernet PHY
The patch was wrongly removed by a kernel version bump to 4.9.106 in
the believe that it was merged upstream thow it wasn't. This lead to
unrecoverable link losses on devices which use those PHYs such as
many ubnt single-port CPEs.
Fixes: 6f8eb1b50f ("kernel: bump 4.9 to 4.9.106 for 18.06")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit a497e47762)
Diffstat (limited to 'target/linux/ar71xx')
-rw-r--r-- | target/linux/ar71xx/patches-4.9/902-at803x-add-reset-gpio-pdata.patch | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/target/linux/ar71xx/patches-4.9/902-at803x-add-reset-gpio-pdata.patch b/target/linux/ar71xx/patches-4.9/902-at803x-add-reset-gpio-pdata.patch index fb6f85cdfd..cb3ed89e98 100644 --- a/target/linux/ar71xx/patches-4.9/902-at803x-add-reset-gpio-pdata.patch +++ b/target/linux/ar71xx/patches-4.9/902-at803x-add-reset-gpio-pdata.patch @@ -16,7 +16,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> #endif /* _PHY_AT803X_PDATA_H */ --- a/drivers/net/phy/at803x.c +++ b/drivers/net/phy/at803x.c -@@ -263,6 +263,7 @@ static int at803x_resume(struct phy_devi +@@ -264,6 +264,7 @@ static int at803x_resume(struct phy_devi static int at803x_probe(struct phy_device *phydev) { @@ -24,8 +24,8 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> struct device *dev = &phydev->mdio.dev; struct at803x_priv *priv; struct gpio_desc *gpiod_reset; -@@ -274,6 +275,12 @@ static int at803x_probe(struct phy_devic - if (phydev->drv->phy_id != ATH8030_PHY_ID) +@@ -276,6 +277,12 @@ static int at803x_probe(struct phy_devic + phydev->drv->phy_id != ATH8032_PHY_ID) goto does_not_require_reset_workaround; + pdata = dev_get_platdata(dev); @@ -37,7 +37,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> gpiod_reset = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_LOW); if (IS_ERR(gpiod_reset)) return PTR_ERR(gpiod_reset); -@@ -405,15 +412,23 @@ static void at803x_link_change_notify(st +@@ -407,15 +414,23 @@ static void at803x_link_change_notify(st * cannot recover from by software. */ if (phydev->state == PHY_NOLINK) { |