Hi Paul,

There's a bug in this patch, see below.

<clip>

>  {
> @@ -1141,8 +1143,26 @@ static void _enable_sysc(struct omap_hwmod *oh)
>       sf = oh->class->sysc->sysc_flags;
>  
>       if (sf & SYSC_HAS_SIDLEMODE) {
> -             idlemode = (oh->flags & HWMOD_SWSUP_SIDLE) ?
> -                     HWMOD_IDLEMODE_NO : HWMOD_IDLEMODE_SMART;
> +             if (oh->flags & HWMOD_SWSUP_SIDLE) {
> +                     /*
> +                      * IP blocks without smart idle should be left
> +                      * in force-idle.  Currently this only applies
> +                      * to 32k sync "timer" which is guaranteed to
> +                      * be accessible when the kernel is running.
> +                      * HWMOD_SWSUP_IDLE must also be set on these
> +                      * IP blocks to indicate a hardware problem.
> +                      * XXX Not an ideal workaround.
> +                      */
> +                     if (oh->class->sysc->idlemodes &
> +                         (SIDLE_NO | SIDLE_FORCE) &&
> +                         !(oh->class->sysc->idlemodes &
> +                           (SIDLE_SMART || SIDLE_SMART_WKUP)))

There should by binary or, not logical here.

-Tero


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to