mirror of
https://github.com/openwrt/openwrt.git
synced 2025-01-21 20:08:24 +00:00
31 lines
962 B
Diff
31 lines
962 B
Diff
|
From b4da0f2e86748379fc43e82b83458eb054af8d19 Mon Sep 17 00:00:00 2001
|
||
|
From: Heiner Kallweit <hkallweit1@gmail.com>
|
||
|
Date: Mon, 17 Nov 2014 21:41:56 +0100
|
||
|
Subject: net: phy: set BMCR_ANENABLE when phy is reset
|
||
|
|
||
|
Kernel 3.14 introduced an additional reset of the switch phys
|
||
|
causing autonegotiation to be disabled.
|
||
|
Change reset command to enable autonegotiation.
|
||
|
|
||
|
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
|
||
|
---
|
||
|
drivers/net/phy/phy_device.c | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
|
||
|
index 25f7419..98445e6 100644
|
||
|
--- a/drivers/net/phy/phy_device.c
|
||
|
+++ b/drivers/net/phy/phy_device.c
|
||
|
@@ -539,7 +539,7 @@ int phy_init_hw(struct phy_device *phydev)
|
||
|
if (!phydev->drv || !phydev->drv->config_init)
|
||
|
return 0;
|
||
|
|
||
|
- ret = phy_write(phydev, MII_BMCR, BMCR_RESET);
|
||
|
+ ret = phy_write(phydev, MII_BMCR, BMCR_RESET | BMCR_ANENABLE);
|
||
|
if (ret < 0)
|
||
|
return ret;
|
||
|
|
||
|
--
|
||
|
2.1.3
|
||
|
|