Re: Question about suspending a system

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/15/07, David Brownell <david-b@xxxxxxxxxxx> wrote:
> > From: Johannes Berg <johannes@xxxxxxxxxxxxxxxx>
> > Date: Mon, 15 Oct 2007 18:03:59 +0200
> >
> > On Mon, 2007-10-15 at 14:43 +0200, Francis Moreau wrote:
> >
> > > So my question is that when we suspend the system, it seems that all
> > > IRQs are masked and I'm a bit suprise since the event that should wake
> > > up the system is an interrupt. This mask is done by
> > > arch_suspend_disable_irqs() and none of the arch is overriding this
> > > stub. If I'm right, how the system should be waked up ?
> >
> > No, well, in most cases the CPU is actually turned off by some other
> > chip (like the PMU on powermac systems) and turned on again by it when
> > the system should wake up.
>
> Not true on most embedded systems using ARM SOCs I've seen ... most
> of those have the SOC enter a low power state which doesn't power off
> the SOC, and moreover leaves the CPU (and most peripherals) in a low
> power data-retaining state.
>

And it's my case too.

> Coming back from suspend states (like "standby" or "suspend-to-RAM")
> then doesn't involve any kind of powerup/reset at all.  That's a goal,
> since it shrinks the suspend/resume cycle time substantially.
>

True, and once the cpu is in standy mode, it's definitely not the
thing which consumes power.

> In conjunction with that model, the last step of entering a system
> suspend state should involve disabling all IRQs that aren't flagged as
> wakeup sources by enable_irq_wake().

Ok, I missed that because I'm using a 2.6.17 kernel.

>  That's shortly before the magic
> which powers down memory and CPU, but after devices have all been told
> to suspend themselves.
>

Is it done in pm_ops->enter method ?

>
> Of course, the CPU itself is often only a small part of the system's
> power usage.  More power is saved by powering devices down, or even
> off.

I'm thinking of making powering the disk off because when suspended it
still uses more that 5W !

>  In that example of a disk drive, one way to handle that would
> be to introduce a power domain within which the drive's controller
> and the drive both live.  If that's properly located in the driver
> model tree, as a device node, then its suspend and resume methods
> could poer the drive off and on (respectively).
>


Do you have any examples that you could give ?

BTW I'm using a SATA hard drive.

Thanks
-- 
Francis
_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm

[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux