From 7895cd7e59d2bc2a1dc53039911cf0fdbda97118 Mon Sep 17 00:00:00 2001 From: Paul Walmsley Date: Wed, 10 Sep 2008 10:47:36 -0600 Subject: [PATCH] --- yaml --- r: 137327 b: refs/heads/master c: d37f1a136783aa9c9b1a6cd832a60cb2bbd2453a h: refs/heads/master i: 137325: da47602c76f52caeaf3d4666298b1598c23291b8 137323: ebae31f8b40e887af80ac51160872b16de2d4857 137319: 95a2c354bc5a8cb89a3341b3f0a4d8a0af81ce97 137311: 3f91a5731f59e04c11f7adcd8d15faa101f0d46b v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-omap2/clockdomains.h | 19 +++++++++++++++++++ .../arm/plat-omap/include/mach/powerdomain.h | 4 ++-- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index be7e49fe5b96..f7fe237eee3e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5b74c67660dbd536a4f4e8cea12d10683ad2e432 +refs/heads/master: d37f1a136783aa9c9b1a6cd832a60cb2bbd2453a diff --git a/trunk/arch/arm/mach-omap2/clockdomains.h b/trunk/arch/arm/mach-omap2/clockdomains.h index e17c3693542c..ec5a72090993 100644 --- a/trunk/arch/arm/mach-omap2/clockdomains.h +++ b/trunk/arch/arm/mach-omap2/clockdomains.h @@ -14,6 +14,11 @@ /* * OMAP2/3-common clockdomains + * + * Even though the 2420 has a single PRCM module from the + * interconnect's perspective, internally it does appear to have + * separate PRM and CM clockdomains. The usual test case is + * sys_clkout/sys_clkout2. */ /* This is an implicit clockdomain - it is never defined as such in TRM */ @@ -23,6 +28,18 @@ static struct clockdomain wkup_clkdm = { .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP24XX | CHIP_IS_OMAP3430), }; +static struct clockdomain prm_clkdm = { + .name = "prm_clkdm", + .pwrdm = { .name = "wkup_pwrdm" }, + .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP24XX | CHIP_IS_OMAP3430), +}; + +static struct clockdomain cm_clkdm = { + .name = "cm_clkdm", + .pwrdm = { .name = "core_pwrdm" }, + .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP24XX | CHIP_IS_OMAP3430), +}; + /* * 2420-only clockdomains */ @@ -266,6 +283,8 @@ static struct clkdm_pwrdm_autodep clkdm_pwrdm_autodeps[] = { static struct clockdomain *clockdomains_omap[] = { &wkup_clkdm, + &cm_clkdm, + &prm_clkdm, #ifdef CONFIG_ARCH_OMAP2420 &mpu_2420_clkdm, diff --git a/trunk/arch/arm/plat-omap/include/mach/powerdomain.h b/trunk/arch/arm/plat-omap/include/mach/powerdomain.h index 4948cb7af5bf..69c9e675d8ee 100644 --- a/trunk/arch/arm/plat-omap/include/mach/powerdomain.h +++ b/trunk/arch/arm/plat-omap/include/mach/powerdomain.h @@ -50,9 +50,9 @@ /* * Maximum number of clockdomains that can be associated with a powerdomain. - * CORE powerdomain is probably the worst case. + * CORE powerdomain on OMAP3 is the worst case */ -#define PWRDM_MAX_CLKDMS 3 +#define PWRDM_MAX_CLKDMS 4 /* XXX A completely arbitrary number. What is reasonable here? */ #define PWRDM_TRANSITION_BAILOUT 100000