Re: [PATCH v3 7/7] HID: asus: Re-send the Zenbook Duo keyboard handshake after probe
From: Rebecca Mara Müller
Date: Sun Oct 18 2026 - 15:18:43 EST
On Sun, Oct 18, 2026 at 07:10:57PM +0200, Denis Benato wrote:
> So this patch is based on an arbitrary wait that is based on the
> assumption that some other device gets initialized...
>
> Can you try making this deterministic?
Since this part came from my patch, I went back and measured it on my
UX8407AA before trying to make it deterministic. The result: there is
nothing to fix, so please drop 7/7.
I built v3 as an out-of-tree module against a 7.0.11-based distribution
kernel, with only the schedule_delayed_work() call of 7/7 removed and my
userspace workaround stopped, and checked whether the keyboard stays in
hotkey mode (keyboard backlight key changing asus::kbd_backlight, plus
usbmon on the keyboard's bus for part of the runs):
- docking: 10 of 10
- loading the module with the keyboard attached: 2 of 2
- rebinding only the touchpad to hid-multitouch while docked: 4 of 4
- s2idle suspend and resume: 3 of 3
- reboot with the module loaded after hid-multitouch (rootfs only):
2 reboots, 1 cold boot, all fine
- reboot with the module in the initramfs: 3 reboots, 1 cold boot,
all fine
usbmon shows hid-asus sending the 0x5a handshake on interface 4 and
hid-multitouch sending feature reports 0x07, 0x03 and 0x05 to the
touchpad on interface 5 some 10-20 ms later, and the hotkeys keep
arriving as 0x5a reports on interface 4 afterwards. The same happens
when hid-multitouch reconfigures the touchpad on resume or on a rebind.
I also went back through my notes from August to see why I believed
otherwise. The conclusion came from a test where I rebound the touchpad
and the brightness keys then did nothing. At that point my test module
had neither the descriptor fixup nor the forced hid-input binding yet,
so the hotkey interface had no input device at all and the keys could
not have worked in either mode; my userspace workaround was stopped.
All later tests that day already included the re-send, so they showed
that the whole patch works, but never whether the re-send is needed.
I am really sorry for the extra work this caused, Paolo, for carrying
and adapting the patch, and Denis and everyone else for reviewing it.
This was my first time this deep into a driver, and I should have
tested the re-send on its own before sending it.
Unrelated, in case it is useful: with the series applied, the keyboard
backlight stays on while the laptop is in s2idle suspend.
Thanks,
Rebecca