Hi! > > And, incidentally, it could possibly make both suspend and hibernate > > work much faster too. The comments there talk about "minimally power > > management aware" drivers which always do the wrong thing for suspend, > > in that they always reset everything... Of course, some drivers will > > actually need to do that, but if freeze/suspend and thaw/restart/resume > > have the same prototypes (probably just int <function>(void)) then > > drivers can trivially assign the same there. > > And hibernate would benefit since a lot of drivers could do a lot less > > work for freeze/thaw. > > I violently agree with all of the above. > > Moreover, for the hibernation we have two special cases that are of no interest > for the suspend: > 1) drivers compiled as modules and not loaded before we restore the image > 2) drivers that need to allocate much memory in .freeze() > > > Or, if we don't want to have five calls and use 40 bytes (on 64-bit) > > just for these callback pointers for each device we could just as well > > have a single callback ->pm(what) and make "what" indicate which one of > > these five things... But then drivers can't make that code depend on the > > swsusp configuration which would be doable with five callbacks. > > Five callbacks are fine by me, especially if we can define reasonable defaults > for the hibernation (and can we?). Well, we still can default to suspend(PMSG_FREEZE) for freeze(), and resume() for thaw(). Anything else is just not sane way forward. Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm