Hi, I'm working on measuring the power consumption of an OMAP3530 (BeagleBoard) in different cpu active and cpu idle states. I am not able to get Linux kernel support for c-states however. I've tried the latest version of the Angstrom distribution and that has a somewhat working CPUIdle subsystem. It is able to go down to the first idle C-state but no further even though it recognizes 7 possible c-states.
Doas anyone know a kernel version, branch, or configuration that has good support for c-states? Does TI provide a sample Linux kernel with software support for the chip's features?
Thanks! Any ideas or resources are greatly appreciated!
Victor,
I faced a similar problem of not entering any states deeper than the first ( with 2.6.37). I found that this was getting disallowed because that the uart time-out values were zeros ( which means no timeout).
I put finite values ( small integers) into /sys/devices/platform/omap/omap_uart.[0-3]/sleep_timeout and it worked.
This might help.
-Abhilash
Hi Abhilash,
Thanks for the tip! I actually didn't have a /sys/devices/platform/omap/omap_uart.[0-3]/sleep_timeout but I did the following:
echo 1 > /debug/pm_debug/sleep_while_idle
echo 1 > /debug/pm_debug/enable_off_mode
echo 1 > /debug/pm_debug/voltage_off_while_idle
And the board got all the way down to C3! While not the lowest state, its still pretty good.
If you don't mind my asking, I am a bit curious about your setup. The 2.6.37 kernel is from the OMAP branch? Is this up and running on a BeagleBoard? Do you use some pre-build distro or roll your own?
Thanks again!
Victor Marmol
Hi,
I also want to change the work state in the cpuidle driver that runs in a OMAP3 BeagleBoard C4, but I have the same problem and it's that I only can change from state0 to state1 and vice versa. I have tried the changes proposed in previous posts, but my problem persists. The OS used is an Angstrom distribution with a Linux kernel version 2.6.32. Someone has any idea about what is the cause of this problem and how solved it?
Thanks!!
Enrique Contreras