Skip to contentSkip to conversation

Runtime GPEs not saved over suspend/resume if type != "platform"

DISCUSSION Alexey Starikovskiy 4 participants 4 messages Oct 25, 2006 – Oct 27, 2006 ACPI

lore
Share & tools
lore
#0 lore raw

Hi,

There is a problem with swsuspend and GPE events.
Now they are restored from acpi_pm_finish(), which is called only if we suspend with "platform" option, what means that if we suspended to disk
with the default "shutdown" option after resume all the GPEs will be disabled. This presents us with the overheating problem after resume at very least.
I see two solutions: one is to make "platform" to be default option if ACPI is enabled, and second -- enable GPE events from some other function, which will be called in any case.

What do you think?

Regards,
Alex.

#1 lore raw

Hi,

Quoted 11 lines · Alexey Starikovskiy

Hi,

There is a problem with swsuspend and GPE events.
Now they are restored from acpi_pm_finish(), which is called only if we suspend with "platform" option, what means that if we suspended to disk
with the default "shutdown" option after resume all the GPEs will be disabled. This presents us with the overheating problem after resume at very least.
I see two solutions: one is to make "platform" to be default option if ACPI is enabled, and second -- enable GPE events from some other function, which will be called in any case.

What do you think?

Obviously we can "fix" that in the short run by causing "platform" to be the default. Still, I think swsusp should work regardless of whether "platform" or "shutdown" is used.

Greetings,
Rafael

Signature · 2 lines
You never change things by fighting the existing reality.
		R. Buckminster Fuller
#2 lore raw
In reply to Alexey Starikovskiy
Quoted 10 lines · Alexey Starikovskiy

Hi,

There is a problem with swsuspend and GPE events.
Now they are restored from acpi_pm_finish(), which is called only if we suspend with "platform" option, what means that if we suspended to disk with the default "shutdown" option after resume all the GPEs will be disabled. This presents us with the overheating problem after resume at very least.

I see two solutions: one is to make "platform" to be default option if ACPI is enabled, and second -- enable GPE events from some other function, which will be called in any case.

We need to do both.

"platform" needs to be the default on ACPI-enabled platforms because when "shutdown" is used, wakeup devices that function from S4 but fail to function from S5 are unavailable.

Further, if somebody chooses to use "shutdown", certainly GPEs need to work when they resume.

-Len

#3 lore raw

Hi!

Quoted 9 lines
Quoted 8 lines

There is a problem with swsuspend and GPE events.
Now they are restored from acpi_pm_finish(), which is called only if we suspend with "platform" option, what means that if we suspended to disk with the default "shutdown" option after resume all the GPEs will be disabled. This presents us with the overheating problem after resume at very least.

I see two solutions: one is to make "platform" to be default option if ACPI is enabled, and second -- enable GPE events from some other function, which will be called in any case.

Quoted 8 lines

We need to do both.

"platform" needs to be the default on ACPI-enabled platforms because when "shutdown" is used, wakeup devices that function from S4 but fail to function from S5 are unavailable.

Further, if somebody chooses to use "shutdown", certainly GPEs need to work when they resume.

Agreed. And rafael's patch is good step forward (in making "platform" default). Time to push it to akpm?
Pavel

Signature · 2 lines
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html