|
|
@@ -2855,7 +2855,6 @@ static void bcmgenet_netif_start(struct net_device *dev)
|
|
|
|
|
|
umac_enable_set(priv, CMD_TX_EN | CMD_RX_EN, true);
|
|
|
|
|
|
- netif_tx_start_all_queues(dev);
|
|
|
bcmgenet_enable_tx_napi(priv);
|
|
|
|
|
|
/* Monitor link interrupts now */
|
|
|
@@ -2937,6 +2936,8 @@ static int bcmgenet_open(struct net_device *dev)
|
|
|
|
|
|
bcmgenet_netif_start(dev);
|
|
|
|
|
|
+ netif_tx_start_all_queues(dev);
|
|
|
+
|
|
|
return 0;
|
|
|
|
|
|
err_irq1:
|
|
|
@@ -2958,7 +2959,7 @@ static void bcmgenet_netif_stop(struct net_device *dev)
|
|
|
struct bcmgenet_priv *priv = netdev_priv(dev);
|
|
|
|
|
|
bcmgenet_disable_tx_napi(priv);
|
|
|
- netif_tx_stop_all_queues(dev);
|
|
|
+ netif_tx_disable(dev);
|
|
|
|
|
|
/* Disable MAC receive */
|
|
|
umac_enable_set(priv, CMD_RX_EN, false);
|
|
|
@@ -3620,13 +3621,13 @@ static int bcmgenet_suspend(struct device *d)
|
|
|
if (!netif_running(dev))
|
|
|
return 0;
|
|
|
|
|
|
+ netif_device_detach(dev);
|
|
|
+
|
|
|
bcmgenet_netif_stop(dev);
|
|
|
|
|
|
if (!device_may_wakeup(d))
|
|
|
phy_suspend(dev->phydev);
|
|
|
|
|
|
- netif_device_detach(dev);
|
|
|
-
|
|
|
/* Prepare the device for Wake-on-LAN and switch to the slow clock */
|
|
|
if (device_may_wakeup(d) && priv->wolopts) {
|
|
|
ret = bcmgenet_power_down(priv, GENET_POWER_WOL_MAGIC);
|
|
|
@@ -3700,8 +3701,6 @@ static int bcmgenet_resume(struct device *d)
|
|
|
/* Always enable ring 16 - descriptor ring */
|
|
|
bcmgenet_enable_dma(priv, dma_ctrl);
|
|
|
|
|
|
- netif_device_attach(dev);
|
|
|
-
|
|
|
if (!device_may_wakeup(d))
|
|
|
phy_resume(dev->phydev);
|
|
|
|
|
|
@@ -3710,6 +3709,8 @@ static int bcmgenet_resume(struct device *d)
|
|
|
|
|
|
bcmgenet_netif_start(dev);
|
|
|
|
|
|
+ netif_device_attach(dev);
|
|
|
+
|
|
|
return 0;
|
|
|
|
|
|
out_clk_disable:
|