Thread (3 messages) flat view 3 messages, 3 authors, 2011-03-10
STALE5662d

[PATCH 1/2] OMAP3: cpuidle: prevent CORE power domain from going to RET or OFF when DSS is on

From: Kevin Hilman <hidden>
Date: 2011-03-04 16:56:07
Also in: linux-omap

Hi Tero,

[off-list ref] writes:

[...]
quoted
quoted
+	/* If DSS is active, prevent CORE RET/OFF */
+	dss_state = pwrdm_read_pwrst(dss_pd);
+	if (dss_state == PWRDM_POWER_ON &&
+	    core_next_state != PWRDM_POWER_ON)
+		core_next_state = PWRDM_POWER_INACTIVE;
+
Due to sleepdeps/autodeps, when this code runs, DSS powerdomain is
always on.  The result is that CORE is always set to INACTIVE.
Now I recall that someone was asking about a patch similar to this
earlier, and had the same issue with DSS sleepdep collision.
What is the reason for having the sleepdep for DSS powerdomain anyway?
At least I can't see any reason why the sleepdep for DSS should be
set. In my opinion it should be perfectly okay for DSS domain to idle
independently of MPU/CORE, as this is going to be better for power
consumption also.
Agreed, but currently the sleepdeps with MPU are automatically managed
(by clkdm autodeps and hwmod initiator deps.)  Until we have merged a
solution to more selectively enable sleepdeps (or remove them) $SUBJECT
patch cannot be merged.

Kevin
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help