[PATCH 00/10] OMAP2/3/4 clockdomains/powerdomains: split shared dependencies and clean up - for 2.6.34

Paul Walmsley paul at pwsan.com
Mon Jan 11 20:05:31 EST 2010


Hello,

this series has already been posted on linux-omap, but is being
reposted here on linux-arm-kernel in case others wish to comment
before sending upstream to the for-next tree for 2.6.34 merging.

- Paul

---

Hi,

This series moves wakeup and sleep dependencies on the OMAP2/3 chips from
the powerdomain layer to the clockdomain layer, where they belong.  It also
adds usecounting for clockdomain dependency usecounting, which fixes the
obvious problem that occurs when several different pieces of code need
to add clockdomain dependencies, and then one removes the dependency.
(To add usecounting, the dependencies that were shared between
clockdomains have been split into separate records.)  These changes should
prepare the clockdomain code for OMAP4 clockdomain dependencies.

The series also does some cleanup.  struct powerdomain is packed, the
dead function pwrdm_clk_state_switch() is removed, documentation is improved,
the nonexistent MDM clockdomain is removed from OMAP2420.

Boot-tested on N800, 2430SDP, and OMAP3 Beagle.  Compile-tested with
omap_osk_5912_defconfig.

Applies on the 'for_2.6.34' branch of git://git.pwsan.com/linux-2.6


- Paul

---

   text    data     bss     dec     hex filename
3622921  198528  102984 3924433  3be1d1 vmlinux.beagle.orig
3623325  199168  102984 3925477  3be5e5 vmlinux.beagle

Paul Walmsley (10):
      OMAP2/3 clkdm/pwrdm: move wkdep/sleepdep handling from pwrdm to clkdm
      OMAP2/3 clockdomains: split shared structures so usecounting works
      OMAP2 clockdomain: modem clockdomain is only present on OMAP2430
      OMAP clockdomain/powerdomain: remove runtime register/unregister
      OMAP clockdomains: add usecounting for wakeup and sleep dependencies
      OMAP2/3/4 clockdomain: add clkdm_clear_all_{wkdep,sleepdep}s()
      OMAP powerdomain/PM: use symbolic constants for the max number of power states
      OMAP powerdomain: rearrange struct powerdomain to save some memory
      OMAP powerdomain: remove pwrdm_clk_state_switch
      OMAP clockdomain/powerdomain: improve documentation


 arch/arm/mach-omap2/clockdomain.c             |  691 +++++++++++++++++++------
 arch/arm/mach-omap2/clockdomains.h            |  474 +++++++++++++++++
 arch/arm/mach-omap2/io.c                      |    2 
 arch/arm/mach-omap2/omap_hwmod.c              |   10 
 arch/arm/mach-omap2/pm34xx.c                  |   10 
 arch/arm/mach-omap2/powerdomain.c             |  570 ++++-----------------
 arch/arm/mach-omap2/powerdomains.h            |   88 ---
 arch/arm/mach-omap2/powerdomains24xx.h        |   87 ---
 arch/arm/mach-omap2/powerdomains34xx.h        |  145 -----
 arch/arm/mach-omap2/prcm.c                    |   12 
 arch/arm/plat-omap/include/plat/clockdomain.h |   99 ++--
 arch/arm/plat-omap/include/plat/powerdomain.h |   78 +--
 arch/arm/plat-omap/include/plat/prcm.h        |    8 
 13 files changed, 1241 insertions(+), 1033 deletions(-)




More information about the linux-arm-kernel mailing list