Re: [PATCH v4] pm_ops: add system quiesce/activate hooks

Pavel Machek
2007-04-13T20:58:37Z

Hi!

> > For powermac, we need to do some things between suspending devices and
> > device_power_off, for example setting the decrementer. This patch
> > introduces pm_ops.quiesce and pm_ops.activate which will be called instead
> > of disabling/enabling irqs so platforms get control over this step.
> >
> > If not assigned, these two calls will be assigned with defaults during
> > set_pm_ops.
> >
> > Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
>
> I have no objections. Pavel, what do you think?

That it is same old hack it used to be. There's nothing magic about
decrementer, and I do not think it is _neccessary_ to touch it just
before cli. Just disable it from sysdev handler or something.

> > --- wireless-dev.orig/include/linux/pm.h 2007-04-13 10:09:17.835356880 +0200
> > +++ wireless-dev/include/linux/pm.h 2007-04-13 14:57:01.525356880 +0200
> > @@ -135,9 +135,19 @@ typedef int __bitwise suspend_disk_metho
> > * @prepare: Prepare the platform for the given suspend state. Can return a
> > * negative error code if necessary.
> > *
> > + * @quiesce: This callback is called after devices are suspended but before
> > + * they are powered down. If assigned, this callback must at least turn
> > + * off local IRQs. If left unassigned, a default callback that does
> > + * nothing but turn off local IRQs is assigned during pm_set_ops().

Is it called for s2ram? swsusp? uswsusp?

Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html