Re: [PATCH v2 RESEND] hid: asus: ROG NKey: Ignore portion of 0x5a report

From: Jiri Kosina
Date: Thu Aug 25 2022 - 05:32:02 EST


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