diff options
author | Pavel Machek <pavel@ucw.cz> | 2005-09-03 18:56:57 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@evo.osdl.org> | 2005-09-05 03:06:16 -0400 |
commit | ca078bae813dd46c0f9b102fdfb4a3384641ff48 (patch) | |
tree | e3348f5dcb24159a522941aa2e3ee40bc9e0589b /drivers/macintosh | |
parent | 829ca9a30a2ddb727981d80fabdbff2ea86bc9ea (diff) |
[PATCH] swsusp: switch pm_message_t to struct
This adds type-checking to pm_message_t, so that people can't confuse it
with int or u32. It also allows us to fix "disk yoyo" during suspend (disk
spinning down/up/down).
[We've tried that before; since that cpufreq problems were fixed and I've
tried make allyes config and fixed resulting damage.]
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Alexander Nyberg <alexn@telia.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/macintosh')
-rw-r--r-- | drivers/macintosh/mediabay.c | 4 | ||||
-rw-r--r-- | drivers/macintosh/via-pmu.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/macintosh/mediabay.c b/drivers/macintosh/mediabay.c index 7e1afca75e41..c0712a1ea5af 100644 --- a/drivers/macintosh/mediabay.c +++ b/drivers/macintosh/mediabay.c | |||
@@ -708,7 +708,7 @@ static int __pmac media_bay_suspend(struct macio_dev *mdev, pm_message_t state) | |||
708 | { | 708 | { |
709 | struct media_bay_info *bay = macio_get_drvdata(mdev); | 709 | struct media_bay_info *bay = macio_get_drvdata(mdev); |
710 | 710 | ||
711 | if (state != mdev->ofdev.dev.power.power_state && state == PM_SUSPEND_MEM) { | 711 | if (state.event != mdev->ofdev.dev.power.power_state.event && state.event == PM_EVENT_SUSPEND) { |
712 | down(&bay->lock); | 712 | down(&bay->lock); |
713 | bay->sleeping = 1; | 713 | bay->sleeping = 1; |
714 | set_mb_power(bay, 0); | 714 | set_mb_power(bay, 0); |
@@ -723,7 +723,7 @@ static int __pmac media_bay_resume(struct macio_dev *mdev) | |||
723 | { | 723 | { |
724 | struct media_bay_info *bay = macio_get_drvdata(mdev); | 724 | struct media_bay_info *bay = macio_get_drvdata(mdev); |
725 | 725 | ||
726 | if (mdev->ofdev.dev.power.power_state != 0) { | 726 | if (mdev->ofdev.dev.power.power_state.event != PM_EVENT_ON) { |
727 | mdev->ofdev.dev.power.power_state = PMSG_ON; | 727 | mdev->ofdev.dev.power.power_state = PMSG_ON; |
728 | 728 | ||
729 | /* We re-enable the bay using it's previous content | 729 | /* We re-enable the bay using it's previous content |
diff --git a/drivers/macintosh/via-pmu.c b/drivers/macintosh/via-pmu.c index 4a0a0ad2d03c..645a2e5c70ab 100644 --- a/drivers/macintosh/via-pmu.c +++ b/drivers/macintosh/via-pmu.c | |||
@@ -3065,7 +3065,7 @@ static int pmu_sys_suspended = 0; | |||
3065 | 3065 | ||
3066 | static int pmu_sys_suspend(struct sys_device *sysdev, pm_message_t state) | 3066 | static int pmu_sys_suspend(struct sys_device *sysdev, pm_message_t state) |
3067 | { | 3067 | { |
3068 | if (state != PM_SUSPEND_DISK || pmu_sys_suspended) | 3068 | if (state.event != PM_EVENT_SUSPEND || pmu_sys_suspended) |
3069 | return 0; | 3069 | return 0; |
3070 | 3070 | ||
3071 | /* Suspend PMU event interrupts */ | 3071 | /* Suspend PMU event interrupts */ |