[PATCH 3/6] ARM: OMAP3PLUS PM: Add IO Daisychain support via hwmod mux
Kevin Hilman
khilman at ti.com
Mon Feb 27 19:24:06 EST 2012
Tero Kristo <t-kristo at ti.com> writes:
> From: Vishwanath BS <vishwanath.bs at ti.com>
>
> IO Daisychain feature has to be triggered whenever there is a change in
> device's mux configuration (See section 3.9.4 in OMAP4 Public TRM vP).
>
> Now devices can idle independent of the powerdomain, there can be a
> window where device is idled and corresponding powerdomain can be
> ON/INACTIVE state. In such situations, since both module wake up is
> enabled at padlevel as well as io daisychain sequence is triggered,
> there will be 2 PRCM interrupts (Module async wake up via swakeup and
> IO Pad interrupt). But as PRCM Interrupt handler clears the Module
> Padlevel WKST bit in the first interrupt, module specific interrupt
> handler will not triggered for the second time
>
> Also look at detailed explanation given by Rajendra at
> http://www.spinics.net/lists/linux-serial/msg04480.html
>
> Signed-off-by: Vishwanath BS <vishwanath.bs at ti.com>
> Signed-off-by: Tero Kristo <t-kristo at ti.com>
My review comments from the last version of this patch were not
answered/addressed:
http://marc.info/?l=linux-omap&m=132621832120535&w=2
[...]
> @@ -64,6 +65,12 @@ static void omap2_init_processor_devices(void)
> }
> }
>
> +void omap_trigger_wuclk_ctrl(void)
> +{
> + if (cpu_is_omap44xx())
> + omap4_trigger_wuclk_ctrl();
> +}
Subject says OMAP3+, but clearly this only works on OMAP4.
Also, no cpu_is* checks at runtime please. Instead, at init time, use
cpu_is_* to initialize a function pointer.
Kevin
More information about the linux-arm-kernel
mailing list