Quote:
Originally Posted by rogerinnyc
Thanks for this extension. FWIW, I tried powersave on my Voyage with 5.7.3 and, in addition to being really, really slow, it did eventually freeze and spontaneously reboot. So I can't say it's practical for my purposes. If there is any way of doing a slightly less aggressive powersave I'd be happy to test. 
|
It looks like it is possible, it might even be practical.
Points:
*) Both the i.MX50 and the i.MX6 that I have seen so far provide two cpu clock speeds, a high and a low.
*) The two hardware/kernel version combinations I have seen so far use the 'standard' Linux cpu frequency governors.
*) Both combinations have a working 'userspace' governor.
The 'standard' cpu frequency governors use control algorithms for controlling 'general purpose' computer systems.
I.E: No outside knowledge of the 'jobs' that the system will be running.
BUT...
These are special purpose devices, they are e-book readers.
We KNOW what the job(s) and job-mix is - to open a book and display a page - then wait (forever in terms of a 1Ghz cpu) to turn the next page.
Currently, there is no direct connection between user interaction and cpu speed (that is: cpu power consumption).
But we could change that -
Say, in general, monitor for user interaction events, in those cases, immediately switch to 'high speed' -
As soon as that event action completes, immediately switch to 'low speed' -
Any other 'jobs' the cpu has to do are just internal supporting tasks, they can all run at the 'low speed' while the person is reading the page, or drop into 'suspend' in the usual manner.
The cpu takes 61035 clock cycles to switch speeds -
I.E: It can switch speeds before the user can lift their finger from the touch screen -
the user should never notice that the device had been running at low speed (or even suspended) in-between touches of the screen.
BUT
I would really like to see more "cpu reports" from other device/firmware combinations before I even consider designing a user space controller for the Kindles.
That is not something to tackle in an information vacuum.