[LEDE-DEV] [PATCH] kernel: adm6996: set carrier status
Mathias Kresin
dev at kresin.me
Sun Aug 7 13:24:57 PDT 2016
Due to the missing carrier status set, the interface wasn't usable on a
BTHOMEHUB2B after ip link down and up as it is done in preinit.
Signed-off-by: Mathias Kresin <dev at kresin.me>
---
target/linux/generic/files/drivers/net/phy/adm6996.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/target/linux/generic/files/drivers/net/phy/adm6996.c b/target/linux/generic/files/drivers/net/phy/adm6996.c
index a2ff2b0..7823b8b 100644
--- a/target/linux/generic/files/drivers/net/phy/adm6996.c
+++ b/target/linux/generic/files/drivers/net/phy/adm6996.c
@@ -1052,6 +1052,17 @@ static int adm6996_read_status(struct phy_device *phydev)
phydev->speed = SPEED_100;
phydev->duplex = DUPLEX_FULL;
phydev->link = 1;
+
+ if (phydev->link) {
+ phydev->state = PHY_RUNNING;
+ netif_carrier_on(phydev->attached_dev);
+ phydev->adjust_link(phydev->attached_dev);
+ } else {
+ phydev->state = PHY_NOLINK;
+ netif_carrier_off(phydev->attached_dev);
+ phydev->adjust_link(phydev->attached_dev);
+ }
+
return 0;
}
--
2.7.4
More information about the Lede-dev
mailing list