Bug 1653

Summary: _GTS must be executed just prior to setting the sleep enable bit in PM1
Product: ACPI Reporter: Luming Yu (luming.yu)
Component: Power-Sleep-WakeAssignee: Robert Moore (Robert.Moore)
Status: REJECTED WILL_NOT_FIX    
Severity: normal CC: acpi-bugzilla
Priority: P2    
Hardware: i386   
OS: Linux   
Kernel Version: 2.6 Subsystem:
Regression: --- Bisected commit-id:
Attachments: a patch for fixing this issue

Description Luming Yu 2003-12-08 00:07:56 UTC
ACPI spec 2.0b section 7.3.3 \GTS said:
OSPM will set the sleep enable (SLP_EN) bit in PM1 control register immediately
following the execution of _GTS control method without performing any other I/O
or  allowing any interrupt servicing.

Currently, kernel do like below:

  _GTS ...
  device_suspend(state)
  ..
  acpi_enter_sleep_state(state)
Comment 1 Luming Yu 2003-12-08 00:09:41 UTC
Created attachment 1630 [details]
a patch for fixing this issue

just move _GTS to right place.
Comment 2 Robert Moore 2004-07-23 10:53:20 UTC
This may require more investigation.  Apparently "Other" ACPI implementations 
do not do this, and they may never do this, regardless of what the spec says.
Bob
Comment 3 Len Brown 2004-11-15 21:48:49 UTC
perhaps we should make calling _GTS configurable then, 
in case it works on some BIOS and doesn't on others? 
 
Comment 4 Robert Moore 2005-09-29 14:13:28 UTC
Unless this proves to be a problem on a particular machine, I would rather not 
change the code, especially since we believe that it currently behaves exactly 
the same as Windows.