diff options
-rw-r--r-- | drivers/net/sky2.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c index 757592436390..33ba3486389e 100644 --- a/drivers/net/sky2.c +++ b/drivers/net/sky2.c | |||
@@ -219,9 +219,12 @@ static void sky2_power_on(struct sky2_hw *hw) | |||
219 | else | 219 | else |
220 | sky2_write8(hw, B2_Y2_CLK_GATE, 0); | 220 | sky2_write8(hw, B2_Y2_CLK_GATE, 0); |
221 | 221 | ||
222 | if (hw->chip_id == CHIP_ID_YUKON_EC_U || hw->chip_id == CHIP_ID_YUKON_EX) { | 222 | if (hw->chip_id == CHIP_ID_YUKON_EC_U || |
223 | hw->chip_id == CHIP_ID_YUKON_EX) { | ||
223 | u32 reg; | 224 | u32 reg; |
224 | 225 | ||
226 | sky2_pci_write32(hw, PCI_DEV_REG3, 0); | ||
227 | |||
225 | reg = sky2_pci_read32(hw, PCI_DEV_REG4); | 228 | reg = sky2_pci_read32(hw, PCI_DEV_REG4); |
226 | /* set all bits to 0 except bits 15..12 and 8 */ | 229 | /* set all bits to 0 except bits 15..12 and 8 */ |
227 | reg &= P_ASPM_CONTROL_MSK; | 230 | reg &= P_ASPM_CONTROL_MSK; |
@@ -238,6 +241,8 @@ static void sky2_power_on(struct sky2_hw *hw) | |||
238 | reg = sky2_read32(hw, B2_GP_IO); | 241 | reg = sky2_read32(hw, B2_GP_IO); |
239 | reg |= GLB_GPIO_STAT_RACE_DIS; | 242 | reg |= GLB_GPIO_STAT_RACE_DIS; |
240 | sky2_write32(hw, B2_GP_IO, reg); | 243 | sky2_write32(hw, B2_GP_IO, reg); |
244 | |||
245 | sky2_read32(hw, B2_GP_IO); | ||
241 | } | 246 | } |
242 | } | 247 | } |
243 | 248 | ||