Re: 900af0d breaks some embedded suspend/resume

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

 



On Sat, Apr 18, 2009 at 03:59:18PM +0200, Rafael J. Wysocki wrote:
> On Saturday 18 April 2009, Rafael J. Wysocki wrote:
> > On Saturday 18 April 2009, Russell King wrote:
> > > Some platforms need to talk via I2C to power control devices during
> > > the suspend method.  Currently, they do this via the platform PM ops
> > > prepare callback, relying on the I2C driver being hooked into the
> > > 'late' suspend method, and hence being shut down _after_ the prepare
> > > callback.
> > 
> > Well, I was not aware of this dependency and it seems quite unusual for a
> > platform to depend on a driver like this.
> > 
> > > However, as of the above commit, the ordering is changed such that
> > > platforms don't get notified of suspends until after all devices are
> > > well and truely shut down.
> > > 
> > > This can't work, and actively breaks some platforms.
> > 
> > Sorry for that.
> > 
> > The patchset in question had been discussed quite extensively before it was
> > merged and it's a pity none of the people caring for the affected platforms
> > took part in those discussions.  That would allow us to avoid the breakage.
> >  
> > > Please come up with another solution for your PCI problems,
> > 
> > I don't think this is possible, sorry.
> > 
> > > or provide alternative equivalent functionality where the platform code is
> > > notified of the PM event prior to the late suspend callback being issued.
> > 
> > There is the .begin() callback that could be used, but if you need the
> > platform to be notified _just_ prior to the late suspend callback, then the
> > only thing I can think of at the moment is the appended patch.
> > 
> > It shouldn't break anything in theory, because the majority of drivers put
> > their devices into low power states in the "regular" suspend callbacks anyway.
> 
> Still, if it turns out to break anything, we'll have to think of an alternative
> approach.
> 
> Which platforms exactly are affected?

The one I've maintained since 2.6.9 and am just sending out the initial
bits for final review.

(It's taking a long time to get it out there because I can only spend
very little time on it, and it keeps getting broken - ALSA, SCSI and
now PM have all broken it in the last couple of months.)

-- 
Russell King
 Linux kernel    2.6 ARM Linux   - http://www.arm.linux.org.uk/
 maintainer of:
_______________________________________________
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