Re: [PATCH 2/5] OMAP: clockdomain: Arch specific funcs to handle deps

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 5 Jan 2011, Rajendra Nayak wrote:

> Define the following architecture specific funtions for omap2/3
> .clkdm_add_wkdep
> .clkdm_del_wkdep
> .clkdm_read_wkdep
> .clkdm_clear_all_wkdeps
> .clkdm_add_sleepdep
> .clkdm_del_sleepdep
> .clkdm_read_sleepdep
> .clkdm_clear_all_sleepdeps
> 
> Convert the platform-independent framework to call these functions.
> With this also move the clkdm lookups for all wkdep_srcs and
> sleepdep_srcs at clkdm_init.
> 
> Signed-off-by: Rajendra Nayak <rnayak@xxxxxx>
> ---
>  arch/arm/mach-omap2/Makefile                     |    2 +
>  arch/arm/mach-omap2/clockdomain.c                |   80 ++++++---------
>  arch/arm/mach-omap2/clockdomain.h                |    2 +
>  arch/arm/mach-omap2/clockdomain2xxx_3xxx.c       |  113 ++++++++++++++++++++++
>  arch/arm/mach-omap2/clockdomains2xxx_3xxx_data.c |    2 +-

This is definitely a good start, but a lot of OMAP4 stuff still needs 
to be done.

For example, OMAP4 has static wakeup dependencies just like OMAP2/3; 
described in section 3.1.1.1.7.3 "Wake-Up Dependency" of the OMAP4430 TRM 
Rev. L.

OMAP4 also has static sleep dependencies just like OMAP3; described in 
section 3.1.1.1.7.1 "Static Dependency" of the OMAP4430 TRM
Rev. L.

The dynamic wakeup dependencies (section 3.1.1.1.7.2 of the TRM) and the 
hardware inactivity timer are new for OMAP4.

What's the plan to add support for these?

Based on a brief look, it would seem to make sense to add support now for 
static sleep dependencies.  These seem quite similar to the OMAP3 
implementation, in that they are between clockdomains.

Dynamic wakeup dependencies and the prescaler timer configuration should 
be fairly easy to add since it is a new feature, and thus no OMAP2/3 
implementation is needed.  The dyndep stuff is between clockdomains, so 
there shouldn't be any interaction needed with the hwmod code by my 
reading.

Static wakeup dependency support appears a little more tricky, since the 
dependencies are between modules and clockdomains on OMAP4, rather than 
between clockdomains and clockdomains as they were on OMAP2/3.  One way to 
handle this would be to change the existing wkdep interface for all OMAPs 
to be between modules and clockdomains; then for the OMAP2/3 
implementations, use the hwmod code/data to get the clockdomain of the 
module's main_clk.  Another is to add a separate interface to add wkdeps 
between a module and clockdomain, use that for OMAP4, but use the existing 
clockdomain-to-clockdomain interface for OMAP2/3.  It might be necessary 
to do both until the hwmod data is more complete, then perhaps phase out 
the latter interface.  Thoughts?


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


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux