diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/e1000e/netdev.c | 11 |
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 | ||