提交 8db9eff6 编写于 作者: Z Zach Sadecki 提交者: Albert ARIBAUD

mx28: fix clearing of IRQs in power init

There are 2 locations in the power init code for the mx28 where IRQs are not being cleared because incorrect methods to clear those bits were being used.  This was causing my board to get stuck waiting for POWER_CTRL_VDD5V_DROOP_IRQ to clear.  Using the correct method to clear the IRQs fixes it.
Signed-off-by: NZach Sadecki <zach@itwatchdogs.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: NMarek Vasut <marek.vasut@gmail.com>
上级 c660a541
......@@ -240,8 +240,8 @@ void mx28_enable_4p2_dcdc_input(int xfer)
clrbits_le32(&power_regs->hw_power_minpwr, POWER_MINPWR_PWD_BO);
while (readl(&power_regs->hw_power_ctrl) & POWER_CTRL_VBUS_VALID_IRQ)
clrbits_le32(&power_regs->hw_power_ctrl,
POWER_CTRL_VBUS_VALID_IRQ);
writel(POWER_CTRL_VBUS_VALID_IRQ,
&power_regs->hw_power_ctrl_clr);
if (prev_5v_brnout) {
writel(POWER_5VCTRL_PWDN_5VBRNOUT,
......@@ -256,8 +256,8 @@ void mx28_enable_4p2_dcdc_input(int xfer)
}
while (readl(&power_regs->hw_power_ctrl) & POWER_CTRL_VDD5V_DROOP_IRQ)
clrbits_le32(&power_regs->hw_power_ctrl,
POWER_CTRL_VDD5V_DROOP_IRQ);
writel(POWER_CTRL_VDD5V_DROOP_IRQ,
&power_regs->hw_power_ctrl_clr);
if (prev_5v_droop)
clrbits_le32(&power_regs->hw_power_ctrl,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册