[Bug 214899] ideapad-laptop: brightness hotkeys not working

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.kernel.org/show_bug.cgi?id=214899

--- Comment #31 from Johannes Penßel (johannes.penssel@xxxxxxxxx) ---
Thank you for your help!

The kernel ships with a tool to read / write to the EC. It is built by running
"make ec" inside tools/power/acpi and relies on the module ec_sys (enabled by
CONFIG_ACPI_EC_DEBUGFS). To enable EC write support, this module must be loaded
with the parameter "write_support=1". Writing to a register works by running
"./ec -w [offset] -v [value]".

Replacing all the OSYS if-conditionals inside _REG with just "Local0 = 0x06"
indeed fixes the issue. Looks like _REG somehow does not receive a correct
value for OSYS. I've tried changing _SB.PC00._INI so it unconditionally sets
OSYS to 0x07DF, but this does not fix _REG. When executed in step-by-step mode
with the kernel AML debugger, _SB.PC00._INI seems to function correctly by
default anyway.

Here comes the interesting part: When running _REG (with arguments 0x03 and
0x01) inside the kernel AML debugger with unmodified ACPI tables, the method
executes correctly and the keys start working.

My understanding of ACPI is limited, but my guess would be that for some
reason, \_SB.PC00.LPCB.EC0._REG gets evaluated before _SB.PC00._INI, thus
leaving the former with an incorrect value for OSYS. AFAICT, this does not look
too dissimilar from the issue in the bugzilla thread you linked.

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.



[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux