<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - Asus Wireless Radio Control no longer works after updating to 1.9.3"
href="https://bugs.freedesktop.org/show_bug.cgi?id=104041">104041</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>Asus Wireless Radio Control no longer works after updating to 1.9.3
</td>
</tr>
<tr>
<th>Product</th>
<td>Wayland
</td>
</tr>
<tr>
<th>Version</th>
<td>unspecified
</td>
</tr>
<tr>
<th>Hardware</th>
<td>x86-64 (AMD64)
</td>
</tr>
<tr>
<th>OS</th>
<td>Linux (All)
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>medium
</td>
</tr>
<tr>
<th>Component</th>
<td>libinput
</td>
</tr>
<tr>
<th>Assignee</th>
<td>wayland-bugs@lists.freedesktop.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>maxtram95@gmail.com
</td>
</tr></table>
<p>
<div>
<pre>Created <span class=""><a href="attachment.cgi?id=135882" name="attach_135882" title="evemu-record /dev/input/event3">attachment 135882</a> <a href="attachment.cgi?id=135882&action=edit" title="evemu-record /dev/input/event3">[details]</a></span>
evemu-record /dev/input/event3
I'm on Arch Linux and ASUS E202SA laptop. This laptop (like many ASUSes) has a
dedicated button to turn the wireless devices on and off. This button is Fn+F2,
but it's actually a separate input device provided by asus_wireless kernel
module.
This button works fine in X11 with libinput 1.9.2 although some patching of
xkeyboard-config is required: <a href="https://patchwork.freedesktop.org/patch/155965/">https://patchwork.freedesktop.org/patch/155965/</a>
(I have no clue why this change is still not upstreamed, but I have patched it
locally). This xkeyboard-config patch is required for X11 to recognize
KEY_RFKILL that is sent by asus_wireless driver.
However, libinput 1.9.3 introduced a regression: this button no longer works in
X11. Faulty is the combination of libinput 1.9.3 and asus_wireless's input
device. If I either use libinput 1.9.2 or press KEY_RFKILL on the atkbd (I
remapped a key with udev to test that), it gets delivered to X11 and shows up
as XF86WLAN. But for some reason, libinput 1.9.3 ignores asus_wireless's
"keyboard".
git bisect results:
git bisect start
# bad: [05a2da818b7ff6d629b90611e8b4a0e06eb5b0ba] libinput 1.9.3
git bisect bad 05a2da818b7ff6d629b90611e8b4a0e06eb5b0ba
# good: [56bcb2999e92b0814768cdcf075dd87a5b09e446] libinput 1.9.2
git bisect good 56bcb2999e92b0814768cdcf075dd87a5b09e446
# good: [fc78e88870ef06623454c723b4a535ad39b8b544] fallback: drop unused
ratelimit struct
git bisect good fc78e88870ef06623454c723b4a535ad39b8b544
# bad: [c77b6b4c96ccaf9a1f5e490c6ed6368eab2f9236] evdev: add new debouncing
code
git bisect bad c77b6b4c96ccaf9a1f5e490c6ed6368eab2f9236
# bad: [8c55bc060df837f986f57c8c26ae2f9c58963bcc] fallback: change to handle
the state at EV_SYN time
git bisect bad 8c55bc060df837f986f57c8c26ae2f9c58963bcc
# good: [52cdbc1299b63e5f03abdc9b4357de55f3919e1a] evdev: fix axis mixup for
the wheel click angles
git bisect good 52cdbc1299b63e5f03abdc9b4357de55f3919e1a
# first bad commit: [8c55bc060df837f986f57c8c26ae2f9c58963bcc] fallback: change
to handle the state at EV_SYN time
evtest output when I press Fn+F2 once:
# evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: Lid Switch
/dev/input/event1: Sleep Button
/dev/input/event2: Power Button
/dev/input/event3: Asus Wireless Radio Control
/dev/input/event4: PC Speaker
/dev/input/event5: USB2.0 VGA UVC WebCam: USB2.0 V
/dev/input/event6: Video Bus
/dev/input/event7: Elan Touchpad
/dev/input/event8: AT Translated Set 2 keyboard
/dev/input/event9: Asus WMI hotkeys
/dev/input/event10: HDA Digital PCBeep
/dev/input/event11: HDA Intel PCH Mic
/dev/input/event12: HDA Intel PCH Headphone
/dev/input/event13: HDA Intel PCH HDMI/DP,pcm=3
Select the device event number [0-13]: 3
Input driver version is 1.0.1
Input device ID: bus 0x19 vendor 0x1043 product 0x0 version 0x0
Input device name: "Asus Wireless Radio Control"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 247 (KEY_RFKILL)
Properties:
Testing ... (interrupt to exit)
Event: time 1512253623.665926, type 1 (EV_KEY), code 247 (KEY_RFKILL), value 1
Event: time 1512253623.665926, type 1 (EV_KEY), code 247 (KEY_RFKILL), value 0
Event: time 1512253623.665926, -------------- SYN_REPORT ------------
^C
xinput output:
$ xinput list-props 'AT Translated Set 2 keyboard'
Device 'AT Translated Set 2 keyboard':
Device Enabled (140): 1
Coordinate Transformation Matrix (142): 1.000000, 0.000000, 0.000000,
0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Send Events Modes Available (264): 1, 0
libinput Send Events Mode Enabled (265): 0, 0
libinput Send Events Mode Enabled Default (266): 0, 0
Device Node (267): "/dev/input/event8"
Device Product ID (268): 1, 1
udevadm output:
$ udevadm info /sys/class/input/event3/
P: /devices/LNXSYSTM:00/LNXSYBUS:00/ATK4002:00/input/input3/event3
N: input/event3
E: DEVNAME=/dev/input/event3
E: DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/ATK4002:00/input/input3/event3
E: ID_INPUT=1
E: ID_INPUT_KEY=1
E: ID_PATH=acpi-ATK4002:00
E: ID_PATH_TAG=acpi-ATK4002_00
E: LIBINPUT_DEVICE_GROUP=19/1043/0:asus-wireless
E: MAJOR=13
E: MINOR=67
E: SUBSYSTEM=input
E: TAGS=:power-switch:
E: USEC_INITIALIZED=5723795
evemu output is attached.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>