linux/drivers/macintosh
Rafael J. Wysocki 3a2d5b7001 PM: Introduce PM_EVENT_HIBERNATE callback state
During the last step of hibernation in the "platform" mode (with the
help of ACPI) we use the suspend code, including the devices'
->suspend() methods, to prepare the system for entering the ACPI S4
system sleep state.

But at least for some devices the operations performed by the
->suspend() callback in that case must be different from its operations
during regular suspend.

For this reason, introduce the new PM event type PM_EVENT_HIBERNATE and
pass it to the device drivers' ->suspend() methods during the last phase
of hibernation, so that they can distinguish this case and handle it as
appropriate.  Modify the drivers that handle PM_EVENT_SUSPEND in a
special way and need to handle PM_EVENT_HIBERNATE in the same way.

These changes are necessary to fix a hibernation regression related
to the i915 driver (ref. http://lkml.org/lkml/2008/2/22/488).

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Pavel Machek <pavel@ucw.cz>
Tested-by: Jeff Chua <jeff.chua.linux@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-23 10:40:04 -08:00
..
Kconfig
Makefile
adb-iop.c
adb.c ADB: Add missing #include <linux/platform_device.h> 2008-02-04 07:51:23 -08:00
adbhid.c
ans-lcd.c
ans-lcd.h
apm_emu.c
mac_hid.c
macio-adb.c
macio_asic.c
macio_sysfs.c
mediabay.c PM: Introduce PM_EVENT_HIBERNATE callback state 2008-02-23 10:40:04 -08:00
nvram.c
rack-meter.c
smu.c [POWERPC] Disable G5 NAP mode during SMU commands on U3 2008-02-08 19:52:35 +11:00
therm_adt746x.c
therm_pm72.c
therm_pm72.h
therm_windtunnel.c Merge branch 'linux-2.6' 2008-01-31 11:25:51 +11:00
via-cuda.c
via-macii.c mac68k: macii adb comment correction 2008-02-05 09:44:24 -08:00
via-maciisi.c
via-pmu-backlight.c
via-pmu-event.c
via-pmu-event.h
via-pmu-led.c
via-pmu.c Merge branch 'linux-2.6' 2008-01-31 11:25:51 +11:00
via-pmu68k.c
windfarm.h
windfarm_core.c
windfarm_cpufreq_clamp.c
windfarm_lm75_sensor.c
windfarm_max6690_sensor.c
windfarm_pid.c
windfarm_pid.h
windfarm_pm81.c
windfarm_pm91.c
windfarm_pm112.c
windfarm_smu_controls.c
windfarm_smu_sat.c
windfarm_smu_sensors.c