Skip to content

Commit fb1c12d

Browse files
AdityaGarg8jannau
authored andcommitted
HID: apple: ignore the trackpad on T2 Macs
In order to manage the trackpad on T2 Macs by hid-magicmouse driver we need to ensure that it is not bound by the hid-apple driver. Use the existing APPLE_IGNORE_MOUSE quirk for the same. Signed-off-by: Aditya Garg <gargaditya08@live.com>
1 parent 20c1fd1 commit fb1c12d

1 file changed

Lines changed: 17 additions & 10 deletions

File tree

drivers/hid/hid-apple.c

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
#include "hid-ids.h"
3131

3232
#define APPLE_RDESC_JIS BIT(0)
33-
/* BIT(1) reserved, was: APPLE_IGNORE_MOUSE */
33+
#define APPLE_IGNORE_MOUSE BIT(1)
3434
#define APPLE_HAS_FN BIT(2)
3535
/* BIT(3) reserved, was: APPLE_HIDDEV */
3636
#define APPLE_ISO_TILDE_QUIRK BIT(4)
@@ -983,6 +983,9 @@ static int apple_probe(struct hid_device *hdev,
983983
if ((id->bus == BUS_SPI || id->bus == BUS_HOST) && fnmode == FKEYS_IGNORE)
984984
quirks &= ~APPLE_ISO_TILDE_QUIRK;
985985

986+
if (quirks & APPLE_IGNORE_MOUSE && hdev->type == HID_TYPE_USBMOUSE)
987+
return -ENODEV;
988+
986989
asc = devm_kzalloc(&hdev->dev, sizeof(*asc), GFP_KERNEL);
987990
if (asc == NULL) {
988991
hid_err(hdev, "can't alloc apple descriptor\n");
@@ -1205,27 +1208,31 @@ static const struct hid_device_id apple_devices[] = {
12051208
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING9_JIS),
12061209
.driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS },
12071210
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J140K),
1208-
.driver_data = APPLE_HAS_FN | APPLE_BACKLIGHT_CTL | APPLE_ISO_TILDE_QUIRK },
1211+
.driver_data = APPLE_HAS_FN | APPLE_BACKLIGHT_CTL | APPLE_ISO_TILDE_QUIRK |
1212+
APPLE_IGNORE_MOUSE },
12091213
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J132),
12101214
.driver_data = APPLE_HAS_FN | APPLE_BACKLIGHT_CTL | APPLE_ISO_TILDE_QUIRK |
1211-
APPLE_DISABLE_FKEYS },
1215+
APPLE_DISABLE_FKEYS | APPLE_IGNORE_MOUSE },
12121216
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J680),
12131217
.driver_data = APPLE_HAS_FN | APPLE_BACKLIGHT_CTL | APPLE_ISO_TILDE_QUIRK |
1214-
APPLE_DISABLE_FKEYS },
1218+
APPLE_DISABLE_FKEYS | APPLE_IGNORE_MOUSE },
12151219
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J680_ALT),
12161220
.driver_data = APPLE_HAS_FN | APPLE_BACKLIGHT_CTL | APPLE_ISO_TILDE_QUIRK |
1217-
APPLE_DISABLE_FKEYS },
1221+
APPLE_DISABLE_FKEYS | APPLE_IGNORE_MOUSE },
12181222
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J213),
12191223
.driver_data = APPLE_HAS_FN | APPLE_BACKLIGHT_CTL | APPLE_ISO_TILDE_QUIRK |
1220-
APPLE_DISABLE_FKEYS },
1224+
APPLE_DISABLE_FKEYS | APPLE_IGNORE_MOUSE },
12211225
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J214K),
1222-
.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_DISABLE_FKEYS },
1226+
.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_DISABLE_FKEYS |
1227+
APPLE_IGNORE_MOUSE },
12231228
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J223),
1224-
.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_DISABLE_FKEYS },
1229+
.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_DISABLE_FKEYS |
1230+
APPLE_IGNORE_MOUSE },
12251231
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J230K),
1226-
.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK },
1232+
.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_IGNORE_MOUSE },
12271233
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRINGT2_J152F),
1228-
.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_DISABLE_FKEYS },
1234+
.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_DISABLE_FKEYS |
1235+
APPLE_IGNORE_MOUSE },
12291236
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI),
12301237
.driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN },
12311238
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO),

0 commit comments

Comments
 (0)