Patch for Maemo Linux Kernel (v2.6.21)
Felix Xiaozhu Lin
Previously, if you want to keep N810's serial port always on, there was no perfect kernel.
With Nokia's official Mameo kernel (2.6.21), the system cannot fall into deep sleep state when the UART is enabled (Power: ~80mA @ 3.8V).
Linux-omap kernel (>2.6.26) can manage UART's power state. However, it incurs high system idle power (~30mA @ 3.8 V), even when UART is disabled.
To address such a issue, I backport UART pm from linux-omap 2.6.28 to Maemo kernel, and create this patch.
Though ugly, it successfully reduces system idle power to <10mA @ 3.8V.
Though still not so perfect comparing with the "ideal case" (Maemo kernel: idle power when UART is disabled (<2mA @ 3.8V)),
I think it is good enough as a research platform.
Maybe I will figure out how to cut off the rest part of idle power. Or maybe it is the necessary cost to keep UART on.
Will be released soon.