summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@linux-foundation.org>2007-04-13 20:34:00 +0200
committerAdrian Bunk <bunk@stusta.de>2007-04-13 22:58:24 +0200
commitd9b258c4bcf11ec912d95c8e61d7453b07f28c63 (patch)
tree588cacee6e9b908a3441b0e46fc8bc8f9595c33d /drivers
parente3bfdc5b2a5a2f4429e2bcd9123a39a361c18662 (diff)
sky2: turn on clocks when doing resume
Some of these chips are disabled until clock is enabled. This fixes: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=404107 Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Adrian Bunk <bunk@stusta.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/sky2.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index 220ea49a4340..e01191a69385 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -2288,6 +2288,10 @@ static int sky2_reset(struct sky2_hw *hw)
return -EOPNOTSUPP;
}
+ /* Make sure and enable all clocks */
+ if (hw->chip_id == CHIP_ID_YUKON_EC_U)
+ sky2_pci_write32(hw, PCI_DEV_REG3, 0);
+
/* disable ASF */
if (hw->chip_id <= CHIP_ID_YUKON_EC) {
sky2_write8(hw, B28_Y2_ASF_STAT_CMD, Y2_ASF_RESET);
@@ -3431,6 +3435,9 @@ static int sky2_resume(struct pci_dev *pdev)
pci_restore_state(pdev);
pci_enable_wake(pdev, PCI_D0, 0);
+
+ if (hw->chip_id == CHIP_ID_YUKON_EC_U)
+ sky2_pci_write32(hw, PCI_DEV_REG3, 0);
err = sky2_set_power_state(hw, PCI_D0);
if (err)
goto out;