On Mon, 14 Mar 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> Hi Josh, thanks for the patch. A couple remarks: > --- > drivers/hid/hid-asus.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/hid/hid-asus.c b/drivers/hid/hid-asus.c > index 08c9a9a60ae4..73fb9fc0701c 100644 > --- a/drivers/hid/hid-asus.c > +++ b/drivers/hid/hid-asus.c > @@ -1212,6 +1212,14 @@ 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"); > + // On the 0x5A input report, change count from 5 to 1 > + rdesc[205] = 0x01; > + } - your mail client whitespace-damaged the patch, so it can't be applied; could you please fix that and resend? - the comment above is (a) using non-standard kernel commenting style, and quite honestly (b) seems a little bit superfluous Could you please fix that up and resend? Thanks, -- Jiri Kosina SUSE Labs