Bug 14735

Summary: ACPI sleep button and lid events not generated in 2.6.32 series
Product: ACPI Reporter: James Ettle (james)
Component: ECAssignee: acpi_ec
Status: CLOSED DUPLICATE    
Severity: normal CC: lenb, rjw, rui.zhang
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.32 Tree: Fedora
Regression: Yes
Bug Depends on:    
Bug Blocks: 14230    
Attachments: dmesg from a session with non-functioning sleep and lid
acpidump output
dmesg output from 2.6.31.6-162.fc12.x86_64 (working) over a suspend/resume cycle
grep . /sys/firmware/acpi/interrupts/* from 2.6.31.6 after suspend/resume
grep . /sys/firmware/acpi/interrupts/* from 2.6.31.6 before suspend/resume
sysfs grep for 2.6.32 after s/r cycle
sysfs grep for 2.6.32 before s/r cycle

Description James Ettle 2009-12-04 19:28:04 UTC
Created attachment 24027 [details]
dmesg from a session with non-functioning sleep and lid

ACPI events are not received on my notebook when running kernel-2.6.32-1.fc13.x86_64. The 2.6.31 series kernels worked OK. Power button
events, temperature and power information seem to be working.

The notebook is a Clevo M720R with Intel Core 2 Duo T8100 processor. dmesg and
acpidump output attached below. (I seem to recall them not working in the past, before WMI was in Linux; I think that changed around 2.6.25/26?)
Comment 1 James Ettle 2009-12-04 19:28:26 UTC
Created attachment 24028 [details]
acpidump output
Comment 2 Zhang Rui 2009-12-07 06:30:16 UTC
please attach the dmesg output in a working kernel, say 2.6.31.
please run the output of "grep . /sys/firmware/acpi/interrupts/*" both before and after pressing the power button, both in 2.6.31 and 2.6.32.
Comment 3 James Ettle 2009-12-07 07:54:37 UTC
Created attachment 24065 [details]
dmesg output from 2.6.31.6-162.fc12.x86_64 (working) over a suspend/resume cycle
Comment 4 James Ettle 2009-12-07 07:55:13 UTC
Created attachment 24066 [details]
grep . /sys/firmware/acpi/interrupts/* from 2.6.31.6 after suspend/resume
Comment 5 James Ettle 2009-12-07 07:55:38 UTC
Created attachment 24067 [details]
grep . /sys/firmware/acpi/interrupts/* from 2.6.31.6 before suspend/resume
Comment 6 James Ettle 2009-12-07 10:35:50 UTC
Created attachment 24072 [details]
sysfs grep for 2.6.32 after s/r cycle
Comment 7 James Ettle 2009-12-07 10:36:09 UTC
Created attachment 24073 [details]
sysfs grep for 2.6.32 before s/r cycle
Comment 8 Zhang Rui 2009-12-08 08:38:26 UTC
could you please verify if reverting this patch helps.

commit 6a63b06f3c494cc87eade97f081300bda60acec7
Author: Alexey Starikovskiy <astarikovskiy@suse.de>
Date:   Fri Aug 28 23:29:44 2009 +0400

    ACPI: EC: use BURST mode only for MSI notebooks
    
    Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
    Signed-off-by: Len Brown <len.brown@intel.com>

diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
index 839b542..788db78 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
@@ -575,7 +575,8 @@ acpi_ec_space_handler(u32 function, acpi_physical_address address,
        if (bits != 8 && acpi_strict)
                return AE_BAD_PARAMETER;
 
-       acpi_ec_burst_enable(ec);
+       if (EC_FLAGS_MSI)
+               acpi_ec_burst_enable(ec);
 
        if (function == ACPI_READ) {
                result = acpi_ec_read(ec, address, &temp);
@@ -596,7 +597,8 @@ acpi_ec_space_handler(u32 function, acpi_physical_address address,
                }
        }
 
-       acpi_ec_burst_disable(ec);
+       if (EC_FLAGS_MSI)
+               acpi_ec_burst_disable(ec);
 
        switch (result) {
        case -EINVAL:
Comment 9 James Ettle 2009-12-17 20:05:03 UTC
(In reply to comment #8)
> could you please verify if reverting this patch helps.
> 
> commit 6a63b06f3c494cc87eade97f081300bda60acec7

Yes, reverting that patch does help.
Comment 10 Zhang Rui 2009-12-22 02:20:49 UTC

*** This bug has been marked as a duplicate of bug 14667 ***