[linux-pm] Nested suspends; messages vs. states

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

 



On Mon, 21 Mar 2005, Pavel Machek wrote:

> > > > Obviously a message isn't the same thing as a state.  This looks like 
> > > > something that will need to be changed in a lot of drivers when we 
> > > > introduce the new notion of a power state.
> > > 
> > > This is not so obvious to me. Message seems to represent the state
> > > driver is in quite well... Plus we need PMSG_ON for state the device
> > > gets after resume, but that's quite easy...
> > 
> > So what value for power_state do you use to tell apart PCI D1 from D2?
> 
> You just ask via pci_choose_state(), and it tells
> you... pci_choose_state() should be deterministic.

That's useless for sysfs.  It won't know to call pci_choose_state when it 
has to display the device's current power state in an attribute file.  Nor 
will it know what pm_message_t to send the driver when the user writes the 
string "D2" to the attribute.

Even just from first principles the mistake is apparent.  pm_message_t is
(or will be, when the structure is defined in its final form) a _message_,
not a _state_.  It contains (will contain) things other than the power
state setting, such as the "flags" field.  Why would a device want to
store pm_message_t.flags as part of its current state?

Alan Stern


[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