Bug 172261 - Brightness keys FN+5 FN+6 not generating acpi events on Asus e200ha laptop
Summary: Brightness keys FN+5 FN+6 not generating acpi events on Asus e200ha laptop
Status: CLOSED DOCUMENTED
Alias: None
Product: ACPI
Classification: Unclassified
Component: Other (show other bugs)
Hardware: Intel Linux
: P1 normal
Assignee: acpi_other
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-09-19 20:56 UTC by gav
Modified: 2016-09-28 00:58 UTC (History)
2 users (show)

See Also:
Kernel Version: 4.8.0-040800rc6-generic
Subsystem:
Regression: No
Bisected commit-id:


Attachments
Output of 'sudo lshw' from Asus e200ha Laptop (8.68 KB, text/plain)
2016-09-19 20:56 UTC, gav
Details
before pressing - cat /proc/inturrupts (3.17 KB, text/plain)
2016-09-27 20:51 UTC, gav
Details
before pressing - grep . /sys/firmware/acpi/interrupts/* (483 bytes, text/plain)
2016-09-27 20:53 UTC, gav
Details
after pressing - cat /proc/interrupts (3.17 KB, text/plain)
2016-09-27 20:54 UTC, gav
Details
after pressing - grep . /sys/firmware/acpi/interrupts/* (3.17 KB, text/plain)
2016-09-27 20:56 UTC, gav
Details

Description gav 2016-09-19 20:56:16 UTC
Created attachment 239221 [details]
Output of 'sudo lshw' from Asus e200ha Laptop

I have an Asus e200ha laptop and the FN keys are unable to control the LCD backlight brightness.

FN+5 should decrease brightness
FN+6 should increase brightness

If I execute acpi_listen and then press the above keys no events are generated.

Running evtest on the device "/dev/input/event6: Asus WMI hotkeys" results in no events when the FN keys are pressed.

Output from sudo lshw is attached.
Comment 1 gav 2016-09-19 21:11:43 UTC
As a matter of reference FN+10, FN+11 and FN+12 do all generate events when using acpi_listen. These keys are mute, vol down and vol up.

acpi_listen output when using the above keys:

gavin@gavin-E200HA:~$ acpi_listen
button/mute MUTE 00000080 00000000 K
button/volumedown VOLDN 00000080 00000000 K
button/volumeup VOLUP 00000080 00000000 K

All other FN keys generate no output. The following is a list of FN keys that are not working:

FN+1 Sleep
FN+2 Airplane Mode
FN+5 Decrease brightness
FN+6 Increase brightness
FN+7 (Erm .. icon is a box with and X in the middle) Not sure.
FN+8 Switch Displays
FN+9 Disable/enable touchpad

Please let me know if I can provide further information.
Comment 2 Zhang Rui 2016-09-26 05:50:42 UTC
please attach the output of "cat /proc/interrupts" and "grep . /sys/firmware/acpi/interrupts/*" both before and after pressing the brightness up/down hotkeys.
Comment 3 gav 2016-09-27 20:51:42 UTC
Created attachment 239861 [details]
before pressing - cat /proc/inturrupts
Comment 4 gav 2016-09-27 20:53:49 UTC
Created attachment 239871 [details]
before pressing - grep . /sys/firmware/acpi/interrupts/*
Comment 5 gav 2016-09-27 20:54:41 UTC
Created attachment 239881 [details]
after pressing - cat /proc/interrupts
Comment 6 gav 2016-09-27 20:56:17 UTC
Created attachment 239891 [details]
after pressing - grep . /sys/firmware/acpi/interrupts/*
Comment 7 Zhang Rui 2016-09-28 00:53:32 UTC
By comparing /proc/interrupts, we can see that there are several differences after pressing the hotkeys.

-  32:       1521       1805          0          0   IO-APIC   32-fasteoi   808622C1:00
+  32:       1521       4249          0          0   IO-APIC   32-fasteoi   808622C1:00

this is the I2C controller, code is drivers/i2c/busses/i2c-designware-platdrv.c

-  34:        269     112780          0          0   IO-APIC   34-fasteoi   808622C1:02
+  34:        269     550515          0          0   IO-APIC   34-fasteoi   808622C1:02

this is the I2C controller, code is drivers/i2c/busses/i2c-designware-platdrv.c

-  45:      12429      48918          0          0   IO-APIC   45-fasteoi   mmc0
+  45:      12429      58690          0          0   IO-APIC   45-fasteoi   mmc0

this is the mmc storage, and it has nothing to do with the hotkey

- 166:        159          0          0          0  chv-gpio   51  PDEC3393:00
+ 166:        400          0          0          0  chv-gpio   51  PDEC3393:00

this is the gpio controller, code is drivers/pinctrl/intel/pinctrl-cherryview.c

- 182:       3375          0          0          0  chv-gpio   11  ELAN0100:00
+ 182:      16695          0          0          0  chv-gpio   11  ELAN0100:00

this is the gpio controller, code is drivers/pinctrl/intel/pinctrl-cherryview.c
Comment 8 Zhang Rui 2016-09-28 00:58:52 UTC
First of all, I don't think this is an ACPI bug as there is no ACPI interrupts when pressing these hotkeys.

Usually, this is a feature gap that some platform specific drivers fail to catch these events and expose to userspace.
Eventually, some guy may introduce this feature to Linux by reverse engineering or something else, but I don't know when. And for this issue, the best way is to raise it to Asus to provide Linux support for this.

Bug closed.

Note You need to log in before you can comment on or make changes to this bug.