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 <d...@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


_______________________________________________
Lede-dev mailing list
Lede-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/lede-dev

Reply via email to