Hello,

I have been making some observations on how WiFi behaves when the
device is put to sleep. I am seeing that even though the WiFi power
policy is set to "When Screen Turns off", the wifi driver will be
active for another 15 minutes until the device is quiescent. I have
seen two implementations of this policy so far:

1. On several HTC phones that I tested, and the phone I'm working on
now, the driver will reserve a wakelock in the kernel which prevents
suspend for 15 minutes. This wakelock seems to be activated when the
device goes to sleep.

2. On the Motorola Droid, I see that the kernel goes into suspend, but
for the first 15 minutes will frequently be woken up by SDIO
interrupts, which I imagine is due to activity on the WLAN although I
don't have visibility on the driver code. After 15 minutes these SDIO
wakeups stop and the phone stays in suspend unless woken up for some
other reason.

During this 15 minute period, there is obviously a power penalty. For
case #1, the current used is more or less consistent, a typical result
will be around 40 mA. The Droid's mechanism seems more efficient; the
results are more variable, I observe average power consumption in the
range of 10-40 mA for any given trial, which I speculate is a function
of how often the WiFi chip is bringing the CPU out of retention.

Does anyone have any visibility on this policy decision? Specifically:

1. Why do we want to keep the WiFi active like this? Is it to support
some push data scenarios?
2. Why 15 minutes? Why not 1 minute, or 1 hour?

Best Regards,
Andrew Boie

-- 
unsubscribe: [email protected]
website: http://groups.google.com/group/android-kernel

Reply via email to