Commit 4e34da4d4252f93a7bc66017a7577afb03c3cb8e

Authored by Rafał Miłecki
Committed by David S. Miller
1 parent 77d47afbf3

bgmac: start/stop PHY on netdev open/stop

I've realized that I need to call ethtool command to get Ethernet
working after booting. Ex call: ethtool -s eth0 autoneg on
It was fixing Ethernet even if auto-negotiation was already on.

Adding calls to phy_start and phy_stop look like a real solution.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

Showing 1 changed file with 4 additions and 0 deletions Side-by-side Diff

drivers/net/ethernet/broadcom/bgmac.c
... ... @@ -1141,6 +1141,8 @@
1141 1141 }
1142 1142 napi_enable(&bgmac->napi);
1143 1143  
  1144 + phy_start(bgmac->phy_dev);
  1145 +
1144 1146 netif_carrier_on(net_dev);
1145 1147  
1146 1148 err_out:
... ... @@ -1152,6 +1154,8 @@
1152 1154 struct bgmac *bgmac = netdev_priv(net_dev);
1153 1155  
1154 1156 netif_carrier_off(net_dev);
  1157 +
  1158 + phy_stop(bgmac->phy_dev);
1155 1159  
1156 1160 napi_disable(&bgmac->napi);
1157 1161 bgmac_chip_intrs_off(bgmac);