OpenCloudOS-Kernel/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 Merge master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2007-10-12 21:27:47 -04:00
Makefile [POWERPC] Xserve cpu-meter driver 2006-12-04 20:39:30 +11:00
adb-iop.c [POWERPC] Remove old includes from arch/ppc 2007-08-22 22:39:35 -05:00
adb.c ADB: Add missing #include <linux/platform_device.h> 2008-02-04 07:51:23 -08:00
adbhid.c macintosh: fix fabrication of caplock key events 2008-01-14 08:52:22 -08:00
ans-lcd.c [POWERPC] Copy over headers from arch/ppc to arch/powerpc that we need 2007-08-22 22:43:29 -05:00
ans-lcd.h [POWERPC] Copy over headers from arch/ppc to arch/powerpc that we need 2007-08-22 22:43:29 -05:00
apm_emu.c [POWERPC] apm_emu: Use generic apm-emulation 2007-05-02 16:42:19 +10:00
mac_hid.c get rid of input BIT* duplicate defines 2007-10-19 11:53:42 -07:00
macio-adb.c [POWERPC] Remove find_compatible_devices 2007-04-24 22:08:57 +10:00
macio_asic.c some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
macio_sysfs.c [POWERPC] macintosh: Use common modalias generation for macio_sysfs 2007-05-07 20:31:15 +10:00
mediabay.c PM: Introduce PM_EVENT_HIBERNATE callback state 2008-02-23 10:40:04 -08:00
nvram.c [PATCH] mark struct file_operations const 4 2007-02-12 09:48:45 -08:00
rack-meter.c [POWERPC] Clean up duplicate includes in drivers/macintosh/ 2007-07-22 21:31:00 +10:00
smu.c [POWERPC] Disable G5 NAP mode during SMU commands on U3 2008-02-08 19:52:35 +11:00
therm_adt746x.c [POWERPC] therm_adt746x: Eliminate some build warnings 2008-01-17 14:57:31 +11:00
therm_pm72.c [POWERPC] therm_pm72: Suppress some compile warnings 2008-01-17 14:57:12 +11:00
therm_pm72.h [POWERPC] Xserve G5 thermal control fixes 2006-07-28 10:42:49 +10:00
therm_windtunnel.c Merge branch 'linux-2.6' 2008-01-31 11:25:51 +11:00
via-cuda.c CUDA ADB fixes 2007-05-04 17:59:07 -07:00
via-macii.c mac68k: macii adb comment correction 2008-02-05 09:44:24 -08:00
via-maciisi.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
via-pmu-backlight.c [POWERPC] Fix for via-pmu based backlight control 2007-12-21 22:14:07 +11:00
via-pmu-event.c Input: via-pmu - add input device support 2006-06-26 01:49:55 -04:00
via-pmu-event.h Input: via-pmu - add input device support 2006-06-26 01:49:55 -04:00
via-pmu-led.c [POWERPC] via-pmu: remove LED sleep notifier 2007-05-08 11:54:19 +10:00
via-pmu.c Merge branch 'linux-2.6' 2008-01-31 11:25:51 +11:00
via-pmu68k.c remove dead code in via-pmu68k 2007-08-22 19:52:45 -07:00
windfarm.h [PATCH] powerpc: Thermal control for dual core G5s 2006-02-07 22:05:14 -08:00
windfarm_core.c [POWERPC] windfarm: Fix windfarm thread freezer interaction 2007-11-08 14:15:34 +11:00
windfarm_cpufreq_clamp.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
windfarm_lm75_sensor.c some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
windfarm_max6690_sensor.c [POWERPC] Rename device_is_compatible to of_device_is_compatible 2007-05-07 20:31:14 +10:00
windfarm_pid.c [PATCH] windfarm license fix 2006-03-06 18:40:45 -08:00
windfarm_pid.h [PATCH] powerpc: Thermal control for dual core G5s 2006-02-07 22:05:14 -08:00
windfarm_pm81.c [PATCH] powerpc: windfarm shall request it's sub modules 2006-11-15 19:57:12 -08:00
windfarm_pm91.c [PATCH] powerpc: windfarm shall request it's sub modules 2006-11-15 19:57:12 -08:00
windfarm_pm112.c [PATCH] powerpc: windfarm shall request it's sub modules 2006-11-15 19:57:12 -08:00
windfarm_smu_controls.c [POWERPC] Rename device_is_compatible to of_device_is_compatible 2007-05-07 20:31:14 +10:00
windfarm_smu_sat.c [POWERPC] Comment out a currently unused function 2007-08-17 11:01:59 +10:00
windfarm_smu_sensors.c [POWERPC] Rename get_property to of_get_property: partial drivers 2007-04-27 15:51:56 +10:00