andrzej zaborowski wrote:
To see anything on the LCD you need the backlight, the LCD controller and various other parts resumed. But if you're checking whether to really resume, or go back to suspend, you don't want to power up anything that's not needed before this check. Userspace is much too late for this. I'd say even the kernel possibly is too late (there's u-boot before). When you hit userspace, all your processes are again in the "RUNNING" state (even before your daemon actually starts to execute), including your mp3 player and anything you had left running when you suspended (imagine the kernel is a zoo and the processes are wild crazy animals, that you free all at once when you let userspace run, somewhere in the mess is your daemon).
I'm not certain which position you are advocating. I disagree that userspace is too late to check certain conditions. In fact, I would say that only userspace has all the necessary information to make such a determination. Again, there is the example where we are in mem suspend to reduce power consumption. You turned the LCD off because you might awaken for some reason that does not need user interaction - such as an interrupt from gsm because of a change in signal or an sms message. You either don't have to do anything, vibrate, make a sound, etc. Then you go back to sleep. Absolutely no LCD necessary, so we didn't turn it back on.
