[RFC][PATCH -mm 0/9] PM: Update global suspend and hibernation operations framework

Rafael J. Wysocki
2007-06-30T21:06:07Z

Hi,

This series of patches implements changes that are possible/necessary/desirable
(IMO) after the introduction of the .set_target() method in 'struct pm_ops'
(the patch that introduces it is in -mm,
http://marc.info/?l=linux-mm-commits&m=118306698814722&w=2).

The patches make the following changes:
* make ACPI use the new .set_target() method in 'struct pm_ops'
* add an ACPI helper function for the devices to determine the power state
to put the device into
* move the definition of 'struct pm_ops' to <include/suspend.h>
* change the name of 'struct pm_ops' to 'struct platform_suspend_ops' and
modify the names of some related functions and global variables accordingly
* modify 'struct platform_suspend_ops' so that .prepare() and .finish() don't
take arguments (.enter() still takes the state argument, because some
platforms don't need to implement the other callbacks)
* make some functions normally defined in kernel/power/main.c be also defined
when CONFIG_PM is unset
* make suspend_ops be a static variable
* rework 'struct hibernation_ops' to add the new method analogous to
.set_target()
* rename 'struct hibernation_ops' to 'struct platform_hibernation_ops' (in
analogy with 'struct platform_suspend_ops')
The details are in the changelogs.

The series is on top of the current -mm (which is somewhat updated with respect
to 2.6.22-rc6-mm1). For convenience, there is a series of patches applicable
on top of 2.6.22-rc6-mm1, including the $subject patchset, at:
http://www.sisk.pl/kernel/patches/2.6.22-rc6-mm1/ .

Comments welcome.

Greetings,
Rafael

--
"Premature optimization is the root of all evil." - Donald Knuth

-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html