On Monday 21 January 2013 07:47 PM, Daniel Lezcano wrote:
Hi All, I have a question regarding the behavior of cpuidle on pandaboard. 1. cpuidle is enabled 2. The deep idle states seem to be reach for i in $(find /sys/devices/system/cpu -name "usage"); do echo "$i : $(cat $i)"; done /sys/devices/system/cpu/cpu0/cpuidle/state0/usage : 7049 /sys/devices/system/cpu/cpu0/cpuidle/state1/usage : 17 /sys/devices/system/cpu/cpu0/cpuidle/state2/usage : 1341 /sys/devices/system/cpu/cpu1/cpuidle/state0/usage : 6318 /sys/devices/system/cpu/cpu1/cpuidle/state1/usage : 17 /sys/devices/system/cpu/cpu1/cpuidle/state2/usage : 1341 3. Regarding the cpuidle driver code : the "state1" and "state2" are coupled states where the broadcast timer is used instead of the local timer. I assume this is because they go down when we reach these idle states.
Thats correct. Local timer are not wakeup capable and hence we switch to a wakeup capable broadcast timer.
4. The content of /proc/interrupts shows no broadcast timer used at all. ... IPI1: 0 0 Timer broadcast interrupts ... Shouldn't be the broadcast timer used sometimes ? or did I miss something ?
There might be an issue with status updating. Just look for gptimer1 interrupts. if they are incrementing then, broadcast is being used but just the status update isn't happening some how. regards santosh -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html