Re: Runtime PM for PCI-based USB host controllers

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

 



On Thursday 27 May 2010, Alan Stern wrote:
> On Wed, 26 May 2010, Rafael J. Wysocki wrote:
> 
> > On Wednesday 26 May 2010, Alan Stern wrote:
> > > Rafael:
> > > 
> > > I've been updating the patch Matthew Garrett posted last November, 
> > > adding runtime PM methods for PCI USB controllers.  Overall the 
> > > situation is now easier, since the rest of the USB subsystem has been 
> > > converted over to the runtime PM framework.  And it even seems to work!
> > > 
> > > But there is one problem.  The device driver needs to know, during its
> > > pm_suspend callback, whether or not wakeup should be enabled.  (Or more
> > > accurately, the pm_suspend callback needs to fail if wakeup isn't going
> > > to be available.) 
> > 
> > The driver can check that by calling pci_dev_run_wake() which returns false
> > if there's no wakeup support for the device.
> 
> Ah, okay, thanks.
> 
> >  However, that's not enough on
> > some broken machines where some signal pins are simply not connected to the
> > system core logic (as a result the PCI core thinks that wakeup is supported,
> > but in fact it doesn't work due to the broken hardware - yes, there are
> > machines like this in the wild, Matthew has one).
> 
> We don't have to worry about that.  If the hardware is broken and the 
> kernel doesn't realize it, the user will just have to tell it not to 
> allow runtime suspend for those devices.

Yup.

That's why we keep the PCI devices runtime PM in the "forbidden" state
until user space changes that.

Rafael
_______________________________________________
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