aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/pending-4.9/734-net-phy-at803x-allow-to-configure-via-pdata.patch
diff options
context:
space:
mode:
authorDaniel Golle <daniel@makrotopia.org>2018-07-31 04:50:38 +0200
committerDaniel Golle <daniel@makrotopia.org>2018-07-31 04:56:58 +0200
commita497e4776207fc4da2369735df51c137f85a425b (patch)
tree78d7449c54f4886a3ef2d418fdb894c038aca012 /target/linux/generic/pending-4.9/734-net-phy-at803x-allow-to-configure-via-pdata.patch
parentef025e6417abd608ee398039623ac8a306bb92c5 (diff)
downloadupstream-a497e4776207fc4da2369735df51c137f85a425b.tar.gz
upstream-a497e4776207fc4da2369735df51c137f85a425b.tar.bz2
upstream-a497e4776207fc4da2369735df51c137f85a425b.zip
kernel: re-add patch for AT8032 Ethernet PHY
The patch was wrongly removed by a kernel version bump to 4.9.105 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: 7dca1bae82 (kernel: bump to 4.9.105) Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Diffstat (limited to 'target/linux/generic/pending-4.9/734-net-phy-at803x-allow-to-configure-via-pdata.patch')
-rw-r--r--target/linux/generic/pending-4.9/734-net-phy-at803x-allow-to-configure-via-pdata.patch12
1 files changed, 6 insertions, 6 deletions
diff --git a/target/linux/generic/pending-4.9/734-net-phy-at803x-allow-to-configure-via-pdata.patch b/target/linux/generic/pending-4.9/734-net-phy-at803x-allow-to-configure-via-pdata.patch
index 8bd9ce3bf7..69b21be951 100644
--- a/target/linux/generic/pending-4.9/734-net-phy-at803x-allow-to-configure-via-pdata.patch
+++ b/target/linux/generic/pending-4.9/734-net-phy-at803x-allow-to-configure-via-pdata.patch
@@ -40,7 +40,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
#define AT803X_DEBUG_ADDR 0x1D
#define AT803X_DEBUG_DATA 0x1E
-@@ -71,6 +78,7 @@ MODULE_LICENSE("GPL");
+@@ -72,6 +79,7 @@ MODULE_LICENSE("GPL");
struct at803x_priv {
bool phy_reset:1;
struct gpio_desc *gpiod_reset;
@@ -48,7 +48,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
};
struct at803x_context {
-@@ -274,8 +282,16 @@ does_not_require_reset_workaround:
+@@ -276,8 +284,16 @@ does_not_require_reset_workaround:
return 0;
}
@@ -65,7 +65,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
int ret;
ret = genphy_config_init(phydev);
-@@ -296,6 +312,26 @@ static int at803x_config_init(struct phy
+@@ -298,6 +314,26 @@ static int at803x_config_init(struct phy
return ret;
}
@@ -92,7 +92,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
return 0;
}
-@@ -333,6 +369,8 @@ static int at803x_config_intr(struct phy
+@@ -335,6 +371,8 @@ static int at803x_config_intr(struct phy
static void at803x_link_change_notify(struct phy_device *phydev)
{
struct at803x_priv *priv = phydev->priv;
@@ -100,8 +100,8 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
+ pdata = dev_get_platdata(&phydev->mdio.dev);
/*
- * Conduct a hardware reset for AT8030 every time a link loss is
-@@ -361,6 +399,24 @@ static void at803x_link_change_notify(st
+ * Conduct a hardware reset for AT8030/2 every time a link loss is
+@@ -363,6 +401,24 @@ static void at803x_link_change_notify(st
} else {
priv->phy_reset = false;
}