On Thu, 28 Jul 2022, Josh Kilmer wrote: > On an Asus G513QY, of the 5 bytes in a 0x5a report, only the first byte > is a meaningful keycode. The other bytes are zeroed out or hold garbage > from the last packet sent to the keyboard. > > This patch fixes up the report descriptor for this event so that the > general hid code will only process 1 byte for keycodes, avoiding > spurious key events and unmapped Asus vendor usagepage code warnings. > > Signed-off-by: Josh Kilmer <srjek2@xxxxxxxxx> > --- > drivers/hid/hid-asus.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/drivers/hid/hid-asus.c b/drivers/hid/hid-asus.c > index 08c9a9a60ae4..b59c3dafa6a4 100644 > --- a/drivers/hid/hid-asus.c > +++ b/drivers/hid/hid-asus.c > @@ -1212,6 +1212,13 @@ static __u8 *asus_report_fixup(struct hid_device *hdev, __u8 *rdesc, > rdesc = new_rdesc; > } > > + if (drvdata->quirks & QUIRK_ROG_NKEY_KEYBOARD && > + *rsize == 331 && rdesc[190] == 0x85 && rdesc[191] == 0x5a && > + rdesc[204] == 0x95 && rdesc[205] == 0x05) { > + hid_info(hdev, "Fixing up Asus N-KEY keyb report descriptor\n"); > + rdesc[205] = 0x01; > + } > + Applied, thanks. -- Jiri Kosina SUSE Labs