diff options
Diffstat (limited to '0023-HID-Add-Apple-Touchbar-on-T2-Macs-in-hid_have_specia.patch')
-rw-r--r-- | 0023-HID-Add-Apple-Touchbar-on-T2-Macs-in-hid_have_specia.patch | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/0023-HID-Add-Apple-Touchbar-on-T2-Macs-in-hid_have_specia.patch b/0023-HID-Add-Apple-Touchbar-on-T2-Macs-in-hid_have_specia.patch new file mode 100644 index 000000000000..815f96874316 --- /dev/null +++ b/0023-HID-Add-Apple-Touchbar-on-T2-Macs-in-hid_have_specia.patch @@ -0,0 +1,65 @@ +From 5b3063adff7da583e61b284beb3308f7588a4c8a Mon Sep 17 00:00:00 2001 +From: Aditya Garg <gargaditya08@live.com> +Date: Sun, 21 Aug 2022 08:04:45 +0000 +Subject: [PATCH 23/73] HID: Add Apple Touchbar on T2 Macs in + hid_have_special_driver list + +commit 750ec977288d96e9a11424e3507ede097af732c4 upstream. + +The touchbar on Apple T2 Macs has 2 modes, one that shows the function +keys and other that shows the media controls. The user can use the fn +key on his keyboard to switch between the 2 modes. + +On Linux, if people were using an external keyboard or mouse, the +touchbar failed to change modes on pressing the fn key with the following +in dmesg :- + +[ 10.661445] apple-ib-als 0003:05AC:8262.0001: : USB HID v1.01 Device [Apple Inc. Ambient Light Sensor] on usb-bce-vhci-3/input0 +[ 11.830992] apple-ib-touchbar 0003:05AC:8302.0007: input: USB HID v1.01 Keyboard [Apple Inc. Touch Bar Display] on usb-bce-vhci-6/input0 +[ 12.139407] apple-ib-touchbar 0003:05AC:8102.0008: : USB HID v1.01 Device [Apple Inc. Touch Bar Backlight] on usb-bce-vhci-7/input0 +[ 12.211824] apple-ib-touchbar 0003:05AC:8102.0009: : USB HID v1.01 Device [Apple Inc. Touch Bar Backlight] on usb-bce-vhci-7/input1 +[ 14.219759] apple-ib-touchbar 0003:05AC:8302.0007: tb: Failed to set touch bar mode to 2 (-110) +[ 24.395670] apple-ib-touchbar 0003:05AC:8302.0007: tb: Failed to set touch bar mode to 2 (-110) +[ 34.635791] apple-ib-touchbar 0003:05AC:8302.0007: tb: Failed to set touch bar mode to 2 (-110) +[ 269.579233] apple-ib-touchbar 0003:05AC:8302.0007: tb: Failed to set touch bar mode to 1 (-110) + +Add the USB IDs of the touchbar found in T2 Macs to HID have special +driver list to fix the issue. + +Signed-off-by: Aditya Garg <gargaditya08@live.com> +Signed-off-by: Jiri Kosina <jkosina@suse.cz> +Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> +--- + drivers/hid/hid-ids.h | 2 ++ + drivers/hid/hid-quirks.c | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h +index f7e4a0d06fb8..bc550e884f37 100644 +--- a/drivers/hid/hid-ids.h ++++ b/drivers/hid/hid-ids.h +@@ -185,6 +185,8 @@ + #define USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2021 0x029c + #define USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_FINGERPRINT_2021 0x029a + #define USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_NUMPAD_2021 0x029f ++#define USB_DEVICE_ID_APPLE_TOUCHBAR_BACKLIGHT 0x8102 ++#define USB_DEVICE_ID_APPLE_TOUCHBAR_DISPLAY 0x8302 + + #define USB_VENDOR_ID_ASUS 0x0486 + #define USB_DEVICE_ID_ASUS_T91MT 0x0185 +diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c +index dc67717d2dab..70f602c64fd1 100644 +--- a/drivers/hid/hid-quirks.c ++++ b/drivers/hid/hid-quirks.c +@@ -314,6 +314,8 @@ static const struct hid_device_id hid_have_special_driver[] = { + { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_GEYSER1_TP_ONLY) }, + { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2021) }, + { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_FINGERPRINT_2021) }, ++ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_TOUCHBAR_BACKLIGHT) }, ++ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_TOUCHBAR_DISPLAY) }, + #endif + #if IS_ENABLED(CONFIG_HID_APPLEIR) + { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_IRCONTROL) }, +-- +2.37.3 + |