HID: apple: Do not reset quirks when the Fn key is not found
authorJosé Expósito <jose.exposito89@gmail.com>
Thu, 18 Nov 2021 07:29:53 +0000 (08:29 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 27 Jan 2022 08:00:54 +0000 (09:00 +0100)
[ Upstream commit a5fe7864d8ada170f19cc47d176bf8260ffb4263 ]

When a keyboard without a function key is detected, instead of removing
all quirks, remove only the APPLE_HAS_FN quirk.

Signed-off-by: José Expósito <jose.exposito89@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/hid/hid-apple.c

index 4e3dd3f55a963aae18a6718b012c84a8d539140f..80ecbf14d3c82d461e38836b4c7aeee4b8ab4d7d 100644 (file)
@@ -392,7 +392,7 @@ static int apple_input_configured(struct hid_device *hdev,
 
        if ((asc->quirks & APPLE_HAS_FN) && !asc->fn_found) {
                hid_info(hdev, "Fn key not found (Apple Wireless Keyboard clone?), disabling Fn key handling\n");
-               asc->quirks = 0;
+               asc->quirks &= ~APPLE_HAS_FN;
        }
 
        return 0;