Paul, 

>-----Original Message-----
>From: Kalliguddi, Hema 
>Sent: Friday, September 24, 2010 9:17 AM
>To: linux-omap@vger.kernel.org
>Cc: Kalliguddi, Hema; Basak, Partha; Balbi, Felipe; Tony 
>Lindgren; Kevin Hilman; Cousson, Benoit; Paul Walmsley
>Subject: [PATCH] OMAP: hwmod: Set autoidle after smartidle 
>during _sysc_enable
>
>OMAP USBOTG module has a requirement to set the autoidle bit only after
>setting smartidle bit. Modified the _sys_enable api to set the 
>smartidle
>first and then the autoidle bit. Setting this will not have 
>any impact on the
>other modules.
>
Review comments from Benoit and Sergie are fixed in this patch.
Benoit acked the older version of the patch and you had asked me re-post with
Review comments incorporated.

http://www.mail-archive.com/linux-omap@vger.kernel.org/msg35464.html

>Signed-off-by: Hema HK <hem...@ti.com>
>Signed-off-by: Basak, Partha <p-bas...@ti.com>
>Cc: Felipe Balbi <ba...@ti.com>
>Cc: Tony Lindgren <t...@atomide.com>
>Cc: Kevin Hilman <khil...@deeprootsystems.com>
>Cc: Cousson, Benoit <b-cous...@ti.com>
>Cc: Paul Walmsley <p...@pwsan.com>
>---
> arch/arm/mach-omap2/omap_hwmod.c |   18 ++++++++++++------
> 1 file changed, 12 insertions(+), 6 deletions(-)
>
>Index: linux-omap-pm/arch/arm/mach-omap2/omap_hwmod.c
>===================================================================
>--- linux-omap-pm.orig/arch/arm/mach-omap2/omap_hwmod.c
>+++ linux-omap-pm/arch/arm/mach-omap2/omap_hwmod.c
>@@ -654,12 +654,6 @@ static void _sysc_enable(struct omap_hwm
>               _set_master_standbymode(oh, idlemode, &v);
>       }
> 
>-      if (sf & SYSC_HAS_AUTOIDLE) {
>-              idlemode = (oh->flags & HWMOD_NO_OCP_AUTOIDLE) ?
>-                      0 : 1;
>-              _set_module_autoidle(oh, idlemode, &v);
>-      }
>-
>       /* XXX OCP ENAWAKEUP bit? */
> 
>       /*
>@@ -672,6 +666,18 @@ static void _sysc_enable(struct omap_hwm
>               _set_clockactivity(oh, oh->class->sysc->clockact, &v);
> 
>       _write_sysconfig(v, oh);
>+
>+      /*
>+       * Set the autoidle bit only after setting the smartidle bit
>+       * as this is requirement for some modules like USBOTG.
>+       * Setting this will not have any impact on the other modules.
>+       */
>+      if (sf & SYSC_HAS_AUTOIDLE) {
>+              idlemode = (oh->flags & HWMOD_NO_OCP_AUTOIDLE) ?
>+                      0 : 1;
>+              _set_module_autoidle(oh, idlemode, &v);
>+              _write_sysconfig(v, oh);
>+      }
> }
> 
> /**
>--
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