ARM: OMAP: DRA7xx: Make L4SEC clock domain SWSUP only
authorJoel Fernandes <joelf@ti.com>
Tue, 18 Oct 2016 07:55:25 +0000 (10:55 +0300)
committerTony Lindgren <tony@atomide.com>
Wed, 9 Nov 2016 22:35:46 +0000 (15:35 -0700)
Using HWSUP for l4sec clock domain is causing warnings in HWMOD code for
DRA7. Based on some observations, once the clock domain goes into an IDLE
state (because of no activity etc), the IDLEST for the module goes to '0x2'
value which means Interface IDLE condition. So far so go, however once the
MODULEMODE is set to disabled for the particular IP, the IDLEST for the
module should go to '0x3', per the HW AUTO IDLE protocol. However this is
not observed and there is no reason per the protocl for the transition to
not happen. This could potentially be a bug in the HW AUTO state-machine.

Work around for this is to use SWSUP only for the particular clockdomain.
With this all the transitions of IDLEST happen correctly and warnings
don't occur.

Signed-off-by: Joel Fernandes <joelf@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/clockdomains7xx_data.c

index ef9ed36e8a612154c5e3adbff9439b9a5871f85f..6c679659cda5d502d97f31cf53fe8abce82ae22f 100644 (file)
@@ -409,7 +409,7 @@ static struct clockdomain l4sec_7xx_clkdm = {
        .dep_bit          = DRA7XX_L4SEC_STATDEP_SHIFT,
        .wkdep_srcs       = l4sec_wkup_sleep_deps,
        .sleepdep_srcs    = l4sec_wkup_sleep_deps,
-       .flags            = CLKDM_CAN_HWSUP_SWSUP,
+       .flags            = CLKDM_CAN_SWSUP,
 };
 
 static struct clockdomain l3main1_7xx_clkdm = {