diff options
Diffstat (limited to 'drivers/net/cxgb3/cxgb3_main.c')
-rw-r--r-- | drivers/net/cxgb3/cxgb3_main.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c index c6ebe25464ca..d6eb9824a10c 100644 --- a/drivers/net/cxgb3/cxgb3_main.c +++ b/drivers/net/cxgb3/cxgb3_main.c | |||
@@ -194,15 +194,13 @@ void t3_os_link_changed(struct adapter *adapter, int port_id, int link_stat, | |||
194 | 194 | ||
195 | if (link_stat != netif_carrier_ok(dev)) { | 195 | if (link_stat != netif_carrier_ok(dev)) { |
196 | if (link_stat) { | 196 | if (link_stat) { |
197 | t3_set_reg_field(adapter, | 197 | t3_mac_enable(mac, MAC_DIRECTION_RX); |
198 | A_XGM_TXFIFO_CFG + mac->offset, | ||
199 | F_ENDROPPKT, 0); | ||
200 | netif_carrier_on(dev); | 198 | netif_carrier_on(dev); |
201 | } else { | 199 | } else { |
202 | netif_carrier_off(dev); | 200 | netif_carrier_off(dev); |
203 | t3_set_reg_field(adapter, | 201 | pi->phy.ops->power_down(&pi->phy, 1); |
204 | A_XGM_TXFIFO_CFG + mac->offset, | 202 | t3_mac_disable(mac, MAC_DIRECTION_RX); |
205 | F_ENDROPPKT, F_ENDROPPKT); | 203 | t3_link_start(&pi->phy, mac, &pi->link_config); |
206 | } | 204 | } |
207 | 205 | ||
208 | link_report(dev); | 206 | link_report(dev); |