2021-05-28 12:04:40 +10:00
|
|
|
From 019200008a92c81db744f30ed5087633c48409ff Mon Sep 17 00:00:00 2001
|
2021-02-20 08:39:12 +00:00
|
|
|
From: Aun-Ali Zaidi <admin@kodeit.net>
|
2021-05-28 12:04:40 +10:00
|
|
|
Date: Sat, 13 Feb 2021 21:06:50 -0500
|
|
|
|
|
Subject: [PATCH 7/9] HID: apple: Add support for MacBookPro16,3
|
2021-02-20 08:39:12 +00:00
|
|
|
keyboard/trackpad
|
|
|
|
|
|
2021-05-28 12:04:40 +10:00
|
|
|
This commit adds the necessary IDs and configuration for the MacBook Pro
|
|
|
|
|
(13-inch, 2020, Two Thunderbolt 3 ports) [MacBookPro16,3 J223 iBridge2,21]
|
2021-02-20 08:39:12 +00:00
|
|
|
|
|
|
|
|
This model uses the APPLE_BACKLIGHT_CTL quirk to expose keyboard
|
|
|
|
|
backlight controls.
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Aun-Ali Zaidi <admin@kodeit.net>
|
|
|
|
|
---
|
|
|
|
|
drivers/hid/hid-apple.c | 2 ++
|
|
|
|
|
drivers/hid/hid-ids.h | 1 +
|
|
|
|
|
drivers/hid/hid-quirks.c | 2 ++
|
|
|
|
|
drivers/input/mouse/bcm5974.c | 17 +++++++++++++++++
|
|
|
|
|
4 files changed, 22 insertions(+)
|
|
|
|
|
|
|
|
|
|
diff --git a/drivers/hid/hid-apple.c b/drivers/hid/hid-apple.c
|
2021-05-28 12:04:40 +10:00
|
|
|
index 4d1b88b57142..65e4137497b3 100644
|
2021-02-20 08:39:12 +00:00
|
|
|
--- a/drivers/hid/hid-apple.c
|
|
|
|
|
+++ b/drivers/hid/hid-apple.c
|
2021-05-28 12:04:40 +10:00
|
|
|
@@ -741,6 +741,8 @@ static const struct hid_device_id apple_devices[] = {
|
2021-02-20 08:39:12 +00:00
|
|
|
.driver_data = APPLE_HAS_FN | APPLE_BACKLIGHT_CTL },
|
|
|
|
|
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J214K),
|
|
|
|
|
.driver_data = APPLE_HAS_FN | APPLE_BACKLIGHT_CTL },
|
2021-05-28 12:04:40 +10:00
|
|
|
+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J223),
|
2021-02-20 08:39:12 +00:00
|
|
|
+ .driver_data = APPLE_HAS_FN | APPLE_BACKLIGHT_CTL },
|
|
|
|
|
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI),
|
|
|
|
|
.driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN },
|
|
|
|
|
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO),
|
|
|
|
|
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
|
2021-05-28 12:04:40 +10:00
|
|
|
index 861069c765c7..2a50ffd71e4e 100644
|
2021-02-20 08:39:12 +00:00
|
|
|
--- a/drivers/hid/hid-ids.h
|
|
|
|
|
+++ b/drivers/hid/hid-ids.h
|
|
|
|
|
@@ -170,6 +170,7 @@
|
|
|
|
|
#define USB_DEVICE_ID_APPLE_WELLSPRINGT2_J680 0x027c
|
|
|
|
|
#define USB_DEVICE_ID_APPLE_WELLSPRINGT2_J213 0x027d
|
|
|
|
|
#define USB_DEVICE_ID_APPLE_WELLSPRINGT2_J214K 0x027e
|
2021-05-28 12:04:40 +10:00
|
|
|
+#define USB_DEVICE_ID_APPLE_WELLSPRINGT2_J223 0x027f
|
2021-02-20 08:39:12 +00:00
|
|
|
#define USB_DEVICE_ID_APPLE_FOUNTAIN_TP_ONLY 0x030a
|
|
|
|
|
#define USB_DEVICE_ID_APPLE_GEYSER1_TP_ONLY 0x030b
|
|
|
|
|
#define USB_DEVICE_ID_APPLE_IRCONTROL 0x8240
|
|
|
|
|
diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c
|
2021-05-28 12:04:40 +10:00
|
|
|
index d15b6fe0c8c2..73e07b1b8bf5 100644
|
2021-02-20 08:39:12 +00:00
|
|
|
--- a/drivers/hid/hid-quirks.c
|
|
|
|
|
+++ b/drivers/hid/hid-quirks.c
|
|
|
|
|
@@ -294,6 +294,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
|
|
|
|
|
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J680) },
|
|
|
|
|
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J213) },
|
|
|
|
|
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J214K) },
|
2021-05-28 12:04:40 +10:00
|
|
|
+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J223) },
|
2021-02-20 08:39:12 +00:00
|
|
|
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI) },
|
|
|
|
|
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO) },
|
|
|
|
|
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_JIS) },
|
|
|
|
|
@@ -933,6 +934,7 @@ static const struct hid_device_id hid_mouse_ignore_list[] = {
|
|
|
|
|
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J680) },
|
|
|
|
|
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J213) },
|
|
|
|
|
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J214K) },
|
2021-05-28 12:04:40 +10:00
|
|
|
+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J223) },
|
2021-02-20 08:39:12 +00:00
|
|
|
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_FOUNTAIN_TP_ONLY) },
|
|
|
|
|
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_GEYSER1_TP_ONLY) },
|
|
|
|
|
{ }
|
|
|
|
|
diff --git a/drivers/input/mouse/bcm5974.c b/drivers/input/mouse/bcm5974.c
|
2021-05-28 12:04:40 +10:00
|
|
|
index 00116c57d6cd..e50aec0c865e 100644
|
2021-02-20 08:39:12 +00:00
|
|
|
--- a/drivers/input/mouse/bcm5974.c
|
|
|
|
|
+++ b/drivers/input/mouse/bcm5974.c
|
|
|
|
|
@@ -94,6 +94,8 @@
|
|
|
|
|
#define USB_DEVICE_ID_APPLE_WELLSPRINGT2_J213 0x027d
|
|
|
|
|
/* MacbookPro16,2 (2020) */
|
|
|
|
|
#define USB_DEVICE_ID_APPLE_WELLSPRINGT2_J214K 0x027e
|
2021-05-28 12:04:40 +10:00
|
|
|
+/* MacbookPro16,3 (2020) */
|
|
|
|
|
+#define USB_DEVICE_ID_APPLE_WELLSPRINGT2_J223 0x027f
|
2021-02-20 08:39:12 +00:00
|
|
|
|
|
|
|
|
#define BCM5974_DEVICE(prod) { \
|
|
|
|
|
.match_flags = (USB_DEVICE_ID_MATCH_DEVICE | \
|
|
|
|
|
@@ -169,6 +171,8 @@ static const struct usb_device_id bcm5974_table[] = {
|
|
|
|
|
BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRINGT2_J213),
|
|
|
|
|
/* MacbookPro16,2 */
|
|
|
|
|
BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRINGT2_J214K),
|
2021-05-28 12:04:40 +10:00
|
|
|
+ /* MacbookPro16,3 */
|
|
|
|
|
+ BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRINGT2_J223),
|
2021-02-20 08:39:12 +00:00
|
|
|
/* Terminating entry */
|
|
|
|
|
{}
|
|
|
|
|
};
|
|
|
|
|
@@ -570,6 +574,19 @@ static const struct bcm5974_config bcm5974_config_table[] = {
|
|
|
|
|
{ SN_COORD, -170, 7685 },
|
|
|
|
|
{ SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION }
|
|
|
|
|
},
|
|
|
|
|
+ {
|
2021-05-28 12:04:40 +10:00
|
|
|
+ USB_DEVICE_ID_APPLE_WELLSPRINGT2_J223,
|
2021-02-20 08:39:12 +00:00
|
|
|
+ 0,
|
|
|
|
|
+ 0,
|
|
|
|
|
+ HAS_INTEGRATED_BUTTON,
|
|
|
|
|
+ 0, sizeof(struct bt_data),
|
|
|
|
|
+ 0x83, DATAFORMAT(TYPE4),
|
|
|
|
|
+ { SN_PRESSURE, 0, 300 },
|
|
|
|
|
+ { SN_WIDTH, 0, 2048 },
|
|
|
|
|
+ { SN_COORD, -6243, 6749 },
|
|
|
|
|
+ { SN_COORD, -170, 7685 },
|
|
|
|
|
+ { SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION }
|
|
|
|
|
+ },
|
|
|
|
|
{}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
--
|
2021-05-28 12:04:40 +10:00
|
|
|
2.30.1
|
2021-02-20 08:39:12 +00:00
|
|
|
|