sky2: clear PCI power control reg at startup
Make sure PCI register for PHY power gets cleared on boot, and make sure to avoid any PCI posting problems. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
committed by
Jeff Garzik
parent
c46ac9463f
commit
b23457737f
@@ -219,9 +219,12 @@ static void sky2_power_on(struct sky2_hw *hw)
|
|||||||
else
|
else
|
||||||
sky2_write8(hw, B2_Y2_CLK_GATE, 0);
|
sky2_write8(hw, B2_Y2_CLK_GATE, 0);
|
||||||
|
|
||||||
if (hw->chip_id == CHIP_ID_YUKON_EC_U || hw->chip_id == CHIP_ID_YUKON_EX) {
|
if (hw->chip_id == CHIP_ID_YUKON_EC_U ||
|
||||||
|
hw->chip_id == CHIP_ID_YUKON_EX) {
|
||||||
u32 reg;
|
u32 reg;
|
||||||
|
|
||||||
|
sky2_pci_write32(hw, PCI_DEV_REG3, 0);
|
||||||
|
|
||||||
reg = sky2_pci_read32(hw, PCI_DEV_REG4);
|
reg = sky2_pci_read32(hw, PCI_DEV_REG4);
|
||||||
/* set all bits to 0 except bits 15..12 and 8 */
|
/* set all bits to 0 except bits 15..12 and 8 */
|
||||||
reg &= P_ASPM_CONTROL_MSK;
|
reg &= P_ASPM_CONTROL_MSK;
|
||||||
@@ -238,6 +241,8 @@ static void sky2_power_on(struct sky2_hw *hw)
|
|||||||
reg = sky2_read32(hw, B2_GP_IO);
|
reg = sky2_read32(hw, B2_GP_IO);
|
||||||
reg |= GLB_GPIO_STAT_RACE_DIS;
|
reg |= GLB_GPIO_STAT_RACE_DIS;
|
||||||
sky2_write32(hw, B2_GP_IO, reg);
|
sky2_write32(hw, B2_GP_IO, reg);
|
||||||
|
|
||||||
|
sky2_read32(hw, B2_GP_IO);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user