[PATCH] Watchdog: OMAP: Fix the runtime pm code to avoid module getting stuck intransition state.

Shilimkar, Santosh santosh.shilimkar at ti.com
Sat Jul 7 08:28:40 EDT 2012


On Sat, Jul 7, 2012 at 5:57 PM, Wim Van Sebroeck <wim at iguana.be> wrote:
>
> Hi All,
>
> > > On Mon, Jun 18, 2012 at 10:53 AM, Lokesh Vutla <lokeshvutla at ti.com>
> > > wrote:
> > >> OMAP watchdong driver is adapted to runtime PM like a general device
> > >> driver but it is not appropriate. It is causing couple of functional
> > >> issues.
> > >>
> > >> 1. On OMAP4 SYSCLK can't be gated, because of issue with WDTIMER2
> > >> module,
> > >> which constantly stays in "in transition" state. Value of register
> > >> CM_WKUP_WDTIMER2_CLKCTRL is always 0x00010000 in this case.
> > >> Issue occurs immediately after first idle, when hwmod framework tries
> > >> to disable WDTIMER2 functional clock - "wd_timer2_fck". After this
> > >> module falls to "in transition" state, and SYSCLK gating is blocked.
> > >>
> > >> 2. Due to runtime PM, watchdog timer may be completely disabled.
> > >> In current code base watchdog timer is not disabled only because of
> > >> issue 1. Otherwise state of WDTIMER2 module will be "Disabled", and
> > >> there
> > >> will be no interrupts from omap_wdt. In other words watchdog will not
> > >> work at all.
> > >>
> > >> Watchdong is a special IP and it should not be disabled otherwise
> > >> purpose of it itself is defeated. Watchdog functional clock should
> > >> never be disabled. This patch updates the runtime PM handling in
> > >> driver so that runtime PM is limited only during probe/shutdown
> > >> and suspend/resume.
> > >>
> > >> The patch fixes issue 1 and 2
> > >>
> > >> Signed-off-by: Lokesh Vutla <lokeshvutla at ti.com>
> > >> Acked-by: Santosh Shilimkar <santosh.shilimkar at ti.com>
> > >> Cc: Wim Van Sebroeck <wim at iguana.be>
> > >> ---
> >
> > Any comments on this patch ? If not, can you please
> > queue this up for the 3.5-rc?
>
> Added to linux-watchdog-next.
>
Thanks Wim.

Regards
Santosh



More information about the linux-arm-kernel mailing list