brcm47xx: b44: start the phy
We did not start the PHY when an external phy was in use. Without this patch the driver uses half duplex mode and the switch uses full duplex mode, which causes problems. Thank you fback for spotting this problem. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 39719
This commit is contained in:
parent
15a7efa119
commit
f587bacc26
1 changed files with 23 additions and 0 deletions
23
target/linux/brcm47xx/patches-3.10/211-b44-start_phy.patch
Normal file
23
target/linux/brcm47xx/patches-3.10/211-b44-start_phy.patch
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
--- a/drivers/net/ethernet/broadcom/b44.c
|
||||||
|
+++ b/drivers/net/ethernet/broadcom/b44.c
|
||||||
|
@@ -1511,6 +1511,10 @@ static int b44_open(struct net_device *d
|
||||||
|
add_timer(&bp->timer);
|
||||||
|
|
||||||
|
b44_enable_ints(bp);
|
||||||
|
+
|
||||||
|
+ if (bp->flags & B44_FLAG_EXTERNAL_PHY)
|
||||||
|
+ phy_start(bp->phydev);
|
||||||
|
+
|
||||||
|
netif_start_queue(dev);
|
||||||
|
out:
|
||||||
|
return err;
|
||||||
|
@@ -1673,6 +1677,9 @@ static int b44_close(struct net_device *
|
||||||
|
|
||||||
|
netif_stop_queue(dev);
|
||||||
|
|
||||||
|
+ if (bp->flags & B44_FLAG_EXTERNAL_PHY)
|
||||||
|
+ phy_stop(bp->phydev);
|
||||||
|
+
|
||||||
|
napi_disable(&bp->napi);
|
||||||
|
|
||||||
|
del_timer_sync(&bp->timer);
|
Loading…
Reference in a new issue