Re: [PATCH] HID: apple: Reset quirks when Fn key is not found

From: José Expósito
Date: Sun May 29 2022 - 14:20:49 EST


Hi Hilton,

> Commit a5fe7864d8ad ("HID: apple: Do not reset quirks when the Fn key
> is not found") re-involves the fnmode issue fixed in commit
> a5d81646fa29 ("HID: apple: Disable Fn-key key-re-mapping on clone
> keyboards"), as linked below.

Reverting that commit will break battery reporting on the Magic
Keyboards 2015 and 2021.

When a keyboard has the APPLE_HAS_FN and another valid quirk, in this
case APPLE_RDESC_BATTERY, setting asc->quirks = 0 (i.e., removing all
quirks) also removes the valid ones.

> To make things work again, this commit reverts a5fe7864d8ad ("HID: apple:
> Do not reset quirks when the Fn key is not found")  and the recent
> workaround fa33382c7f74 ("HID: apple: Properly handle function keys on
> Keychron keyboards")

My understanding of Bryan's patch (in cc) was that the new config option
worked out of the box for Keychron and Apple keyboards and allowed for
manual configuration where required.

Could you explain a bit which bug is fixed by reverting these 2
commits, please? I don't own a Keychron keyboard for testing, so it is
not obvious to me why this change is required.

Thanks,Jose

> Link: https://lore.kernel.org/linux-input/f82dd7a1-a5c6-b651-846c-29f6df9436af@xxxxxxxxxx/
> Fixes: a5fe7864d8ad ("HID: apple: Do not reset quirks when the Fn key is not found")
> Signed-off-by: Hilton Chain <hako@ultrarare.space>