|
@@ -387,8 +387,6 @@ static int _set_module_autoidle(struct omap_hwmod *oh, u8 autoidle,
|
|
|
*/
|
|
|
static int _enable_wakeup(struct omap_hwmod *oh, u32 *v)
|
|
|
{
|
|
|
- u32 wakeup_mask;
|
|
|
-
|
|
|
if (!oh->class->sysc ||
|
|
|
!((oh->class->sysc->sysc_flags & SYSC_HAS_ENAWAKEUP) ||
|
|
|
(oh->class->sysc->idlemodes & SIDLE_SMART_WKUP) ||
|
|
@@ -400,9 +398,8 @@ static int _enable_wakeup(struct omap_hwmod *oh, u32 *v)
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
|
|
|
- wakeup_mask = (0x1 << oh->class->sysc->sysc_fields->enwkup_shift);
|
|
|
-
|
|
|
- *v |= wakeup_mask;
|
|
|
+ if (oh->class->sysc->sysc_flags & SYSC_HAS_ENAWAKEUP)
|
|
|
+ *v |= 0x1 << oh->class->sysc->sysc_fields->enwkup_shift;
|
|
|
|
|
|
if (oh->class->sysc->idlemodes & SIDLE_SMART_WKUP)
|
|
|
_set_slave_idlemode(oh, HWMOD_IDLEMODE_SMART_WKUP, v);
|
|
@@ -425,8 +422,6 @@ static int _enable_wakeup(struct omap_hwmod *oh, u32 *v)
|
|
|
*/
|
|
|
static int _disable_wakeup(struct omap_hwmod *oh, u32 *v)
|
|
|
{
|
|
|
- u32 wakeup_mask;
|
|
|
-
|
|
|
if (!oh->class->sysc ||
|
|
|
!((oh->class->sysc->sysc_flags & SYSC_HAS_ENAWAKEUP) ||
|
|
|
(oh->class->sysc->idlemodes & SIDLE_SMART_WKUP) ||
|
|
@@ -438,9 +433,8 @@ static int _disable_wakeup(struct omap_hwmod *oh, u32 *v)
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
|
|
|
- wakeup_mask = (0x1 << oh->class->sysc->sysc_fields->enwkup_shift);
|
|
|
-
|
|
|
- *v &= ~wakeup_mask;
|
|
|
+ if (oh->class->sysc->sysc_flags & SYSC_HAS_ENAWAKEUP)
|
|
|
+ *v &= ~(0x1 << oh->class->sysc->sysc_fields->enwkup_shift);
|
|
|
|
|
|
if (oh->class->sysc->idlemodes & SIDLE_SMART_WKUP)
|
|
|
_set_slave_idlemode(oh, HWMOD_IDLEMODE_SMART, v);
|