[prev in list] [next in list] [prev in thread] [next in thread] 

List:       git-commits-head
Subject:    HID: Add Apple Touchbar on T2 Macs in hid_have_special_driver list
From:       Linux Kernel Mailing List <linux-kernel () vger ! kernel ! org>
Date:       2022-08-31 17:20:02
Message-ID: git-mailbomb-linux-master-750ec977288d96e9a11424e3507ede097af732c4 () kernel ! org
[Download RAW message or body]

Commit:     750ec977288d96e9a11424e3507ede097af732c4
Parent:     3a47fa7b14c7d9613909a844aba27f99d3c58634
Refname:    refs/heads/master
Web:        https://git.kernel.org/torvalds/c/750ec977288d96e9a11424e3507ede097af732c4
                
Author:     Aditya Garg <gargaditya08@live.com>
AuthorDate: Sun Aug 21 08:04:45 2022 +0000
Committer:  Jiri Kosina <jkosina@suse.cz>
CommitDate: Thu Aug 25 11:46:15 2022 +0200

    HID: Add Apple Touchbar on T2 Macs in hid_have_special_driver list
    
    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>
---
 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 347d783da82c7..f80d6193fca6e 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 dc67717d2dabc..70f602c64fd13 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) },


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic