Bug 94761
Summary: | Laptop HandleLidSwitch Event Not Recognized | ||
---|---|---|---|
Product: | ACPI | Reporter: | nathangrammel |
Component: | Other | Assignee: | Aaron Lu (aaron.lu) |
Status: | CLOSED WILL_NOT_FIX | ||
Severity: | normal | CC: | aaron.lu, rui.zhang |
Priority: | P1 | ||
Hardware: | Other | ||
OS: | Linux | ||
Kernel Version: | 3.18.6, 4.0-rc3 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: |
Output of "cat sys/bus/acpi/drivers/button/*/path"
Output of acpidump dmesg log |
Description
nathangrammel
2015-03-11 20:09:14 UTC
please attach the acpidump output please attach the output of "cat /sys/bus/acpi/drivers/button/*/path" Created attachment 170561 [details]
Output of "cat sys/bus/acpi/drivers/button/*/path"
Created attachment 170571 [details]
Output of acpidump
The LID status is got from a field in the EC operation region, it may be related to EC problem. Do you have problems with other notification source? like if you plug in/out the power adapter? I haven't noticed anything thus far and as far as I can tell, everything else is working fine. Sounds like an EC problem to me, please refer to this comment: https://bugzilla.kernel.org/show_bug.cgi?id=89211#c8 to provide more information. Created attachment 173041 [details] dmesg log The log from dmesg after following the steps at https://bugzilla.kernel.org/show_bug.cgi?id=89211#c8. If I wait for a minute or two I see many duplicates of the "ACPI : EC: ##### Query(0x25) stopped #####" and "ACPI : EC: ##### Query(0x25) started #####" messages. The longer I wait, the more duplicates appear. This log is as it appears immediately after closing and reopening the lid. Device (LID0) { Name (_HID, EisaId ("PNP0C0D") /* Lid Device */) // _HID: Hardware ID Method (_LID, 0, NotSerialized) // _LID: Lid Status { Return (!^^PCI0.LPCB.EC0.LIDF) } Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake { SLID = Arg0 } } Method (_Q15, 0, NotSerialized) // _Qxx: EC Query { P80H = 0x15 Local0 = LIDF /* \_SB_.PCI0.LPCB.EC0_.LIDF */ If ((Zero == Local0)) { Sleep (0x03E8) } Local0 = ~Local0 GP36 = Local0 Notify (LID0, 0x80) // Status Change } The status of the LID is got from the PCI0.LPCB.EC0.LIDF, which is a field in the system memory space and there is no assignment for it in the whole ACPI table. So if it is one after boot(probably initialized by the BIOS), it will keep its value as one, which means the LID is open. And from the log of comment #7, the corresponding event when LID is closed or open never triggered(there is no Query(0x15) in the log). The LID may work in a non-standard ACPI way, I have no idea of it though. I'll close it as will_not_fix as there is no can_not_fix. |