[Gta04-owner] Rfkill devices needed before suspend?

NeilBrown neilb at suse.de
Fri Apr 6 00:51:56 CEST 2012

On Thu, 5 Apr 2012 21:07:00 +0000 Radek Polak <psonek2 at seznam.cz> wrote:

> Hi,
> i have a few more kernel related questions. If i want to have low current in 
> susped (25mA) i have to rfkill bluetooth wifi and gps first. Is this how it is 
> supposed to work or should this be done by kernel? Without rfkilling i have 
> current ~200mA.

Yes, this is how it is supposed to work.
Two different perspectives.

1/ if you aren't using bluetooth (or wifi or gps) and any given time, then
   you don't want it to be consuming power.  So you shouldn't be "turning off
   before suspend" but rather you should be "turning off when you don't want
   the service any more".  This may be at much the same time that you
   suspend, but it might not.

2/ Both bluetooth and wifi can wake from suspend so you certainly want the
   option of leaving them on.
   I don't think GPS can meaningfully wake from suspend, but you might want
   to leave it on in some low-power mode where it updates it's fix every five
   minutes, so that when you do wake up a recent fix is immediately available
   (I'm not 100% sure you can do this, but I think you can do something
   fairly close).
   So again, you want the option of leaving it on.

'suspend' is really about stop processes, not powering down devices. powering
down devices just automatically happens when no-one is using them - for some
devices.  For other devices you need to be explicit.

Having said that: you don't actually need to 'rfkill block wifi'.
The wifi driver does power down on suspend unless you explicitly set up a
wake-on-wan configuration.

> And one more thing, sometimes the kernel suspends and the immediately resumes 
> again. Dmesg shows this:
> [ 1470.015624] Freezing user space processes ... (elapsed 0.01 seconds) done.
> [ 1470.036987] Freezing remaining freezable tasks ... (elapsed 0.02 seconds) 
> done.
> [ 1470.068481] Suspending console(s) (use no_console_suspend to debug)
> [ 1470.206787] td028ttec1_panel_suspend()
> [ 1470.220916] gta04_disable_lcd()
> [ 1470.221099] PM: suspend of devices complete after 145.568 msecs
> [ 1470.223205] PM: late suspend of devices complete after 2.075 msecs
> [ 1470.537078] Successfully put all powerdomains to target state
> [ 1470.542144] PM: early resume of devices complete after 4.943 msecs
> [ 1470.542938] td028ttec1_panel_resume()
> [ 1470.763366] gta04_enable_lcd()
> [ 1471.591735] PM: resume of devices complete after 1049.438 msecs
> [ 1471.637786] Restarting tasks ... done.
> [ 1491.989135] PM: Syncing filesystems ... done.
> Any idea what is waking it up? Unfortunately it's not easily reproducible... 
> Reboot fixes it.

I have seen this happen on one-off occasions a number of time.
i.e. it fails to suspend but then when it tries again it succeeds.
My device is configured to immediately suspend whenever there is no event or
action keeping it awake so I do even notice the "fail then succeed" unless I
am watching.

The only times I have seen it happen repeatedly is when the GPS is still on
and so repeatedly generating wakeup events.
Have you checked that GPS is definitely off when this happens?

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 828 bytes
Desc: not available
URL: <http://lists.goldelico.com/pipermail/gta04-owner/attachments/20120406/5c1207b2/attachment.bin>

More information about the Gta04-owner mailing list