]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ARM: S3C64XX: Implement basic power domain support
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Thu, 8 Dec 2011 22:27:48 +0000 (23:27 +0100)
committerRafael J. Wysocki <rjw@sisk.pl>
Thu, 8 Dec 2011 22:27:48 +0000 (23:27 +0100)
commit89fc81d550583b000881679e5bca61b0cc104dcc
tree22dc31a569d99dc8cee41b14d8360440f57ab954
parent4fc2bf3ea15357de089339659b4403f6825758b8
ARM: S3C64XX: Implement basic power domain support

The S3C64xx SoCs contain a set of gateable power domains which can be
enabled and disabled at runtime in order to save power.  Use the generic
power domain code to implement support for these in software, enabling
runtime control of most domains:

 - ETM (not supported in mainline).
 - Domain G: 3D acceleration (no mainline support).
 - Domain V: MFC (no mainline support).
 - Domain I: JPEG and camera interface (no mainline support).
 - Domain P: 2D acceleration, TV encoder and scaler (no mainline support)
 - Domain S: Security (no mainline support).
 - Domain F: LCD (driver already uses runtime PM), post processing and
   rotation (no mainline support).

The IROM domain is marked as always enabled as we should arrange for it
to be enabled when we suspend which will need a bit more work.

Due to all the conditional device registration that the platform does
wrap s3c_pm_init() with s3c64xx_pm_init() which actually puts the device
into the power domain after the machines have registered, looking for
platform data to tell if the device was registered. Since currently only
Cragganmore actually sets up PM that is the only machine updated.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
arch/arm/mach-s3c64xx/Kconfig
arch/arm/mach-s3c64xx/mach-crag6410.c
arch/arm/mach-s3c64xx/pm.c
arch/arm/plat-samsung/include/plat/pm.h