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 10:04:27 +0000 (11:04 +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 6ccfa0cb997aba82a1b3728c26ed34516b0cc828..b683c0e8557d4879ca19facff5d3bed8e0763847 100644 (file)
@@ -429,7 +429,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;