aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@osdl.org>2006-07-12 18:23:47 -0400
committerJeff Garzik <jeff@garzik.org>2006-07-12 18:39:21 -0400
commitafa195da458cb06f302c37f8d37b21b177060aed (patch)
tree294691d03ad8e4ea5971036aba5e9d2e03c44902 /drivers
parent6a5706b99c98e3c974cf5b55324e4eed7f82e55a (diff)
[PATCH] sky2: PHY power on delays
The documentation says we need to wait after turning on the PHY. Also, don't enable WOL by default. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/sky2.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index 5e8f9efd90a9..e65689ebe147 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -234,7 +234,6 @@ static void sky2_set_power_state(struct sky2_hw *hw, pci_power_t state)
234 } 234 }
235 235
236 if (hw->chip_id == CHIP_ID_YUKON_EC_U) { 236 if (hw->chip_id == CHIP_ID_YUKON_EC_U) {
237 sky2_write16(hw, B0_CTST, Y2_HW_WOL_ON);
238 sky2_pci_write32(hw, PCI_DEV_REG3, 0); 237 sky2_pci_write32(hw, PCI_DEV_REG3, 0);
239 reg1 = sky2_pci_read32(hw, PCI_DEV_REG4); 238 reg1 = sky2_pci_read32(hw, PCI_DEV_REG4);
240 reg1 &= P_ASPM_CONTROL_MSK; 239 reg1 &= P_ASPM_CONTROL_MSK;
@@ -243,6 +242,7 @@ static void sky2_set_power_state(struct sky2_hw *hw, pci_power_t state)
243 } 242 }
244 243
245 sky2_pci_write32(hw, PCI_DEV_REG1, reg1); 244 sky2_pci_write32(hw, PCI_DEV_REG1, reg1);
245 udelay(100);
246 246
247 break; 247 break;
248 248
@@ -255,6 +255,7 @@ static void sky2_set_power_state(struct sky2_hw *hw, pci_power_t state)
255 else 255 else
256 reg1 |= (PCI_Y2_PHY1_POWD | PCI_Y2_PHY2_POWD); 256 reg1 |= (PCI_Y2_PHY1_POWD | PCI_Y2_PHY2_POWD);
257 sky2_pci_write32(hw, PCI_DEV_REG1, reg1); 257 sky2_pci_write32(hw, PCI_DEV_REG1, reg1);
258 udelay(100);
258 259
259 if (hw->chip_id == CHIP_ID_YUKON_XL && hw->chip_rev > 1) 260 if (hw->chip_id == CHIP_ID_YUKON_XL && hw->chip_rev > 1)
260 sky2_write8(hw, B2_Y2_CLK_GATE, 0); 261 sky2_write8(hw, B2_Y2_CLK_GATE, 0);