[PATCH] sky2: save/restore base hardware irq during suspend/resume
authorStephen Hemminger <shemminger@osdl.org>
Tue, 13 Jun 2006 08:17:30 +0000 (17:17 +0900)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 13 Jun 2006 20:16:41 +0000 (13:16 -0700)
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>
drivers/net/sky2.c

index b680e64..df899dc 100644 (file)
@@ -3442,6 +3442,7 @@ static int sky2_suspend(struct pci_dev *pdev, pm_message_t state)
                }
        }
 
+       sky2_write32(hw, B0_IMSK, 0);
        pci_save_state(pdev);
        sky2_set_power_state(hw, pstate);
        return 0;
@@ -3460,6 +3461,8 @@ static int sky2_resume(struct pci_dev *pdev)
        if (err)
                goto out;
 
+       sky2_write32(hw, B0_IMSK, Y2_IS_BASE);
+
        for (i = 0; i < hw->ports; i++) {
                struct net_device *dev = hw->dev[i];
                if (dev && netif_running(dev)) {