aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/e1000e/netdev.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/e1000e/netdev.c')
-rw-r--r--drivers/net/e1000e/netdev.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c
index 36473e6d07d6..16a03c553299 100644
--- a/drivers/net/e1000e/netdev.c
+++ b/drivers/net/e1000e/netdev.c
@@ -3220,7 +3220,11 @@ int e1000e_up(struct e1000_adapter *adapter)
3220 netif_wake_queue(adapter->netdev); 3220 netif_wake_queue(adapter->netdev);
3221 3221
3222 /* fire a link change interrupt to start the watchdog */ 3222 /* fire a link change interrupt to start the watchdog */
3223 ew32(ICS, E1000_ICS_LSC); 3223 if (adapter->msix_entries)
3224 ew32(ICS, E1000_ICS_LSC | E1000_ICR_OTHER);
3225 else
3226 ew32(ICS, E1000_ICS_LSC);
3227
3224 return 0; 3228 return 0;
3225} 3229}
3226 3230
@@ -3537,7 +3541,10 @@ static int e1000_open(struct net_device *netdev)
3537 pm_runtime_put(&pdev->dev); 3541 pm_runtime_put(&pdev->dev);
3538 3542
3539 /* fire a link status change interrupt to start the watchdog */ 3543 /* fire a link status change interrupt to start the watchdog */
3540 ew32(ICS, E1000_ICS_LSC); 3544 if (adapter->msix_entries)
3545 ew32(ICS, E1000_ICS_LSC | E1000_ICR_OTHER);
3546 else
3547 ew32(ICS, E1000_ICS_LSC);
3541 3548
3542 return 0; 3549 return 0;
3543 3550