aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sky2.c
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@osdl.org>2006-06-13 04:17:30 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-13 16:16:41 -0400
commit8ab8fca2071cec559e4b77212cccffd150ce5ce7 (patch)
treec2eca699cd1c1ec57c19d1f89f77c6365724ced6 /drivers/net/sky2.c
parent26ec43f132d1cf282124a020b2bb5310496c9132 (diff)
[PATCH] sky2: save/restore base hardware irq during suspend/resume
The hardware should be fully shut off during suspend, and the base irq mask restored during resume. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/net/sky2.c')
-rw-r--r--drivers/net/sky2.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index b680e64ad2ca..df899dcbd5b0 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -3442,6 +3442,7 @@ static int sky2_suspend(struct pci_dev *pdev, pm_message_t state)
3442 } 3442 }
3443 } 3443 }
3444 3444
3445 sky2_write32(hw, B0_IMSK, 0);
3445 pci_save_state(pdev); 3446 pci_save_state(pdev);
3446 sky2_set_power_state(hw, pstate); 3447 sky2_set_power_state(hw, pstate);
3447 return 0; 3448 return 0;
@@ -3460,6 +3461,8 @@ static int sky2_resume(struct pci_dev *pdev)
3460 if (err) 3461 if (err)
3461 goto out; 3462 goto out;
3462 3463
3464 sky2_write32(hw, B0_IMSK, Y2_IS_BASE);
3465
3463 for (i = 0; i < hw->ports; i++) { 3466 for (i = 0; i < hw->ports; i++) {
3464 struct net_device *dev = hw->dev[i]; 3467 struct net_device *dev = hw->dev[i];
3465 if (dev && netif_running(dev)) { 3468 if (dev && netif_running(dev)) {