2

I'm currently trying to compare the overhead of running Android over bare linux on the Nexus S. Towards this, I've built a TINY_ANDROID image that I'm using to compare against stock AOSP (4.1.1_r4).

I noticed a discrepancy in the power consumption while the phone is suspended. stock AOSP consumes ~1.2mA when suspended, whereas TINY_ANDROID consumes ~9mA.

The one change that was made to stock AOSP was that it was set to airplane mode which disables the radio. Initially I believee that the TINY_ANDROID build still has the radio turned on and this is leading to the increased current draw.

Towards solving this, I included libril and rild (ril-daemon) into the TINY_ANDROID build and re-ran my tests. This led to 'suspend' current draw of ~45mA. This coincides with cpu.active current stated in power_profile.xml of the Nexus S.

Could someone indicate whether I'm doing something wrong in my tests?

Any insights into which component may be actively drawing the extra current would also be greatly helpful.

Guru Prasad
  • 4,053
  • 2
  • 25
  • 43
  • 1
    I think it is going to be difficult to manage power consumption unless you are privy to platform-proprietary design specifics. In addition to the radio, there are power amplifiers and microphone bias lines that draw current, for example. There is a specific device called the power management IC (PMIC) which manages via HW the power load. – Peter L. Oct 16 '13 at 03:00
  • I see..is it possible to query the PMIC driver on Linux to identify components that are being powered? I haven't looked into it yet – Guru Prasad Oct 17 '13 at 14:44
  • I don't recall there being a PMIC driver. In the architecture that I worked on the PMIC was controlled via the modem side (outside of the apps processor and outside of the Linux kernel). There might be some Android power profiles that you can tweak. – Peter L. Oct 17 '13 at 15:01

0 Answers0