Media keys cause "ACPI: \_SB_.ATKD: Unsupported event" on ASUS laptop
After commit 1a699476e258 [two months ago], Linux has stopped recognizing the media & function keys on my laptop's keyboard (the laptop is ASUS K52JT.206).
When I press any of the Fn keys (Play/Pause, Stop, Prev, Next, Vol+, Vol-, Mute, WiFi, Brightness +/-...), I get the following messages in dmesg:
| ACPI: \_SB_.ATKD: Unsupported event type 0x45 | ACPI: \_SB_.ATKD: Unsupported event type 0x43 | ACPI: \_SB_.ATKD: Unsupported event type 0x40 | etc.
In the past (v3.14 and earlier), those used to be reported as ACPI and input events. From acpi_listen on a good kernel:
| hotkey ATK0100:00 00000045 00000000 | cd/play CDPLAY 00000080 00000000 K | | hotkey ATK0100:00 00000031 0000000d | button/volumedown VOLDN 00000080 00000000 K | | hotkey ATK0100:00 00000016 00000000 | | hotkey ATK0100:00 00000025 00000001
Bisect output:
1a699476e25814343766342672c655fb135224cc is the first bad commit commit 1a699476e25814343766342672c655fb135224cc
Author: Rafael J. Wysocki <[email protected]> Date: Thu Feb 6 13:58:13 2014 +0100
ACPI / hotplug / PCI: Hotplug notifications from acpi_bus_notify()
Since acpi_bus_notify() is executed on all notifications for all devices anyway, make it execute acpi_device_hotplug() for all hotplug events instead of installing notify handlers pointing to the same function for all hotplug devices.
[...]
* Linux 3.14.0-rc1-00023-g1a699476e258 (bad)
* Linux 3.14.0-rc1-00022-g5e6f236c2631 (good)
(I'm not quite sure why they show up as 3.14-rc1 if they're after 3.14?)
The kernel config is close to that of stock Arch Linux, except with entirely irrelevant devices disabled (PATA, SCSI, tuner, etc.)
Signature · 1 line
Mantas Mikulėnas <[email protected]>
Quoted 11 lines · Mantas Mikulėnas
After commit
1a699476e258[two months ago], Linux has stopped recognizing the media & function keys on my laptop's keyboard (the laptop is ASUS K52JT.206).When I press any of the Fn keys (Play/Pause, Stop, Prev, Next, Vol+, Vol-, Mute, WiFi, Brightness +/-...), I get the following messages in dmesg:
| ACPI: \_SB_.ATKD: Unsupported event type 0x45 | ACPI: \_SB_.ATKD: Unsupported event type 0x43 | ACPI: \_SB_.ATKD: Unsupported event type 0x40 | etc.
I'm seeing the same problem with an EeePC 900's volume and brightness keys:
[ 90.098518] ACPI: \_SB_.ATKD: Unsupported event type 0x14 [ 90.785202] ACPI: \_SB_.ATKD: Unsupported event type 0x15 [ 457.062072] ACPI: \_SB_.ATKD: Unsupported event type 0x2e [ 457.926754] ACPI: \_SB_.ATKD: Unsupported event type 0x2d [ 458.418740] ACPI: \_SB_.ATKD: Unsupported event type 0x2c [ 458.821482] ACPI: \_SB_.ATKD: Unsupported event type 0x2b [ 459.240896] ACPI: \_SB_.ATKD: Unsupported event type 0x2a
Quoted 28 lines
In the past (v3.14 and earlier), those used to be reported as ACPI and input events. From
acpi_listenon a good kernel:| hotkey ATK0100:00 00000045 00000000 | cd/play CDPLAY 00000080 00000000 K | | hotkey ATK0100:00 00000031 0000000d | button/volumedown VOLDN 00000080 00000000 K | | hotkey ATK0100:00 00000016 00000000 | | hotkey ATK0100:00 00000025 00000001Bisect output:
1a699476e25814343766342672c655fb135224ccis the first bad commit commit1a699476e25814343766342672c655fb135224ccAuthor: Rafael J. Wysocki <[email protected]> Date: Thu Feb 6 13:58:13 2014 +0100ACPI / hotplug / PCI: Hotplug notifications from
acpi_bus_notify()Since
acpi_bus_notify()is executed on all notifications for all devices anyway, make it executeacpi_device_hotplug()for all hotplug events instead of installing notify handlers pointing to the same function for all hotplug devices.
[...]
Quoted 7 lines
* Linux 3.14.0-rc1-00023-g1a699476e258 (bad)
* Linux 3.14.0-rc1-00022-g5e6f236c2631 (good)(I'm not quite sure why they show up as 3.14-rc1 if they're after 3.14?)
The kernel config is close to that of stock Arch Linux, except with entirely irrelevant devices disabled (PATA, SCSI, tuner, etc.)
Adding email addresses recommended by get_maintainer.pl to see if that helps this to get noticed...
Signature · 1 line
Sitsofe | http://sucs.org/~sits/
Quoted 15 lines · Sitsofe Wheeler
Quoted 11 lines · Mantas Mikulėnas
After commit
1a699476e258[two months ago], Linux has stopped recognizing the media & function keys on my laptop's keyboard (the laptop is ASUS K52JT.206).When I press any of the Fn keys (Play/Pause, Stop, Prev, Next, Vol+, Vol-, Mute, WiFi, Brightness +/-...), I get the following messages in dmesg:
| ACPI: \_SB_.ATKD: Unsupported event type 0x45 | ACPI: \_SB_.ATKD: Unsupported event type 0x43 | ACPI: \_SB_.ATKD: Unsupported event type 0x40 | etc.I'm seeing the same problem with an EeePC 900's volume and brightness keys:
Quoted 7 lines
[ 90.098518] ACPI: \_SB_.ATKD: Unsupported event type 0x14 [ 90.785202] ACPI: \_SB_.ATKD: Unsupported event type 0x15 [ 457.062072] ACPI: \_SB_.ATKD: Unsupported event type 0x2e [ 457.926754] ACPI: \_SB_.ATKD: Unsupported event type 0x2d [ 458.418740] ACPI: \_SB_.ATKD: Unsupported event type 0x2c [ 458.821482] ACPI: \_SB_.ATKD: Unsupported event type 0x2b [ 459.240896] ACPI: \_SB_.ATKD: Unsupported event type 0x2a
Does this patch help:
--- drivers/acpi/bus.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
drivers/acpi/bus.c +2 -3
@@ -380,9 +380,8 @@ static void acpi_bus_notify(acpi_handlebreak ;default : -acpi_handle_warn (handle,"Unsupported event type 0x%x\n" , type); - ost_code =ACPI_OST_SC_UNRECOGNIZED_NOTIFY ; - goto err; +acpi_handle_debug (handle,"Unknown event type 0x%x\n" , type); +break ; } adev =acpi_bus_get_acpi_device (handle);
Quoted 24 lines · Rafael J. Wysocki
Quoted 15 lines · Sitsofe Wheeler
Quoted 11 lines · Mantas Mikulėnas
After commit
1a699476e258[two months ago], Linux has stopped recognizing the media & function keys on my laptop's keyboard (the laptop is ASUS K52JT.206).When I press any of the Fn keys (Play/Pause, Stop, Prev, Next, Vol+, Vol-, Mute, WiFi, Brightness +/-...), I get the following messages in dmesg:
| ACPI: \_SB_.ATKD: Unsupported event type 0x45 | ACPI: \_SB_.ATKD: Unsupported event type 0x43 | ACPI: \_SB_.ATKD: Unsupported event type 0x40 | etc.I'm seeing the same problem with an EeePC 900's volume and brightness keys:
Quoted 7 lines
[ 90.098518] ACPI: \_SB_.ATKD: Unsupported event type 0x14 [ 90.785202] ACPI: \_SB_.ATKD: Unsupported event type 0x15 [ 457.062072] ACPI: \_SB_.ATKD: Unsupported event type 0x2e [ 457.926754] ACPI: \_SB_.ATKD: Unsupported event type 0x2d [ 458.418740] ACPI: \_SB_.ATKD: Unsupported event type 0x2c [ 458.821482] ACPI: \_SB_.ATKD: Unsupported event type 0x2b [ 459.240896] ACPI: \_SB_.ATKD: Unsupported event type 0x2a
Quoted 5 lines
Does this patch help:
--- drivers/acpi/bus.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
Yes, it seems to be working fine.
Thanks!
Signature · 5 lines
Mantas Mikulėnas <[email protected]> -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 25 lines · Mantas Mikulėnas
Quoted 24 lines · Rafael J. Wysocki
Quoted 22 lines · Sitsofe Wheeler
Quoted 11 lines · Mantas Mikulėnas
After commit
1a699476e258[two months ago], Linux has stopped recognizing the media & function keys on my laptop's keyboard (the laptop is ASUS K52JT.206).When I press any of the Fn keys (Play/Pause, Stop, Prev, Next, Vol+, Vol-, Mute, WiFi, Brightness +/-...), I get the following messages in dmesg:
| ACPI: \_SB_.ATKD: Unsupported event type 0x45 | ACPI: \_SB_.ATKD: Unsupported event type 0x43 | ACPI: \_SB_.ATKD: Unsupported event type 0x40 | etc.I'm seeing the same problem with an EeePC 900's volume and brightness keys:
[ 90.098518] ACPI: \_SB_.ATKD: Unsupported event type 0x14 [ 90.785202] ACPI: \_SB_.ATKD: Unsupported event type 0x15 [ 457.062072] ACPI: \_SB_.ATKD: Unsupported event type 0x2e [ 457.926754] ACPI: \_SB_.ATKD: Unsupported event type 0x2d [ 458.418740] ACPI: \_SB_.ATKD: Unsupported event type 0x2c [ 458.821482] ACPI: \_SB_.ATKD: Unsupported event type 0x2b [ 459.240896] ACPI: \_SB_.ATKD: Unsupported event type 0x2a
Quoted 7 lines
Quoted 5 lines
Does this patch help:
--- drivers/acpi/bus.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)Yes, it seems to be working fine.
OK, thanks for verifying, below it goes with a changelog and tags.
Rafael
---
From: Rafael J. Wysocki <[email protected]>
Subject: ACPI / notify: Do not block unknown type notifications in root handler
Commit 1a699476e258 "ACPI / hotplug / PCI: Hotplug notifications from acpi_bus_notify()" changed the root notify handler, acpi_bus_notify(), to block unknown type norifications, but it overlooked the fact that they might be propagated to drivers via the ->notify() callback.
Fix the problem by allowing drivers to receive unknown type notifications via ->notify() as before.
--- drivers/acpi/bus.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
drivers/acpi/bus.c +2 -3
@@ -380,9 +380,8 @@ static void acpi_bus_notify(acpi_handlebreak ;default : -acpi_handle_warn (handle,"Unsupported event type 0x%x\n" , type); - ost_code =ACPI_OST_SC_UNRECOGNIZED_NOTIFY ; - goto err; +acpi_handle_debug (handle,"Unknown event type 0x%x\n" , type); +break ; } adev =acpi_bus_get_acpi_device (handle);
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html