|
@@ -217,7 +217,7 @@ static void omap3xxx_prm_restore_irqen(u32 *saved_mask)
|
|
|
* omap3xxx_prm_clear_mod_irqs - clear wake-up events from PRCM interrupt
|
|
|
* @module: PRM module to clear wakeups from
|
|
|
* @regs: register set to clear, 1 or 3
|
|
|
- * @ignore_bits: wakeup status bits to ignore
|
|
|
+ * @wkst_mask: wkst bits to clear
|
|
|
*
|
|
|
* The purpose of this function is to clear any wake-up events latched
|
|
|
* in the PRCM PM_WKST_x registers. It is possible that a wake-up event
|
|
@@ -226,7 +226,7 @@ static void omap3xxx_prm_restore_irqen(u32 *saved_mask)
|
|
|
* that any peripheral wake-up events occurring while attempting to
|
|
|
* clear the PM_WKST_x are detected and cleared.
|
|
|
*/
|
|
|
-int omap3xxx_prm_clear_mod_irqs(s16 module, u8 regs, u32 ignore_bits)
|
|
|
+int omap3xxx_prm_clear_mod_irqs(s16 module, u8 regs, u32 wkst_mask)
|
|
|
{
|
|
|
u32 wkst, fclk, iclk, clken;
|
|
|
u16 wkst_off = (regs == 3) ? OMAP3430ES2_PM_WKST3 : PM_WKST1;
|
|
@@ -238,7 +238,7 @@ int omap3xxx_prm_clear_mod_irqs(s16 module, u8 regs, u32 ignore_bits)
|
|
|
|
|
|
wkst = omap2_prm_read_mod_reg(module, wkst_off);
|
|
|
wkst &= omap2_prm_read_mod_reg(module, grpsel_off);
|
|
|
- wkst &= ~ignore_bits;
|
|
|
+ wkst &= wkst_mask;
|
|
|
if (wkst) {
|
|
|
iclk = omap2_cm_read_mod_reg(module, iclk_off);
|
|
|
fclk = omap2_cm_read_mod_reg(module, fclk_off);
|
|
@@ -254,7 +254,7 @@ int omap3xxx_prm_clear_mod_irqs(s16 module, u8 regs, u32 ignore_bits)
|
|
|
omap2_cm_set_mod_reg_bits(clken, module, fclk_off);
|
|
|
omap2_prm_write_mod_reg(wkst, module, wkst_off);
|
|
|
wkst = omap2_prm_read_mod_reg(module, wkst_off);
|
|
|
- wkst &= ~ignore_bits;
|
|
|
+ wkst &= wkst_mask;
|
|
|
c++;
|
|
|
}
|
|
|
omap2_cm_write_mod_reg(iclk, module, iclk_off);
|