39 lines
1.3 KiB
Diff
39 lines
1.3 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|||
|
|
From: Kerem Karabay <kekrby@gmail.com>
|
||
|
|
Date: Tue, 27 May 2025 22:13:15 +0530
|
||
|
|
Subject: HID: multitouch: take cls->maxcontacts into account for Apple Touch
|
||
|
|
Bar even without a HID_DG_CONTACTMAX field
|
||
|
|
|
||
|
|
In Apple Touch Bar, the HID_DG_CONTACTMAX is not present, but the maximum
|
||
|
|
contact count is still greater than the default. Add quirks for the same.
|
||
|
|
|
||
|
|
Acked-by: Benjamin Tissoires <bentiss@kernel.org>
|
||
|
|
Signed-off-by: Kerem Karabay <kekrby@gmail.com>
|
||
|
|
Co-developed-by: Aditya Garg <gargaditya08@live.com>
|
||
|
|
Signed-off-by: Aditya Garg <gargaditya08@live.com>
|
||
|
|
---
|
||
|
|
drivers/hid/hid-multitouch.c | 7 +++++++
|
||
|
|
1 file changed, 7 insertions(+)
|
||
|
|
|
||
|
|
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
|
||
|
|
index 111111111111..222222222222 100644
|
||
|
|
--- a/drivers/hid/hid-multitouch.c
|
||
|
|
+++ b/drivers/hid/hid-multitouch.c
|
||
|
|
@@ -1327,6 +1327,13 @@ static int mt_touch_input_configured(struct hid_device *hdev,
|
||
|
|
struct input_dev *input = hi->input;
|
||
|
|
int ret;
|
||
|
|
|
||
|
|
+ /*
|
||
|
|
+ * HID_DG_CONTACTMAX field is not present on Apple Touch Bars,
|
||
|
|
+ * but the maximum contact count is greater than the default.
|
||
|
|
+ */
|
||
|
|
+ if (cls->quirks & MT_QUIRK_APPLE_TOUCHBAR && cls->maxcontacts)
|
||
|
|
+ td->maxcontacts = cls->maxcontacts;
|
||
|
|
+
|
||
|
|
if (!td->maxcontacts)
|
||
|
|
td->maxcontacts = MT_DEFAULT_MAXCONTACT;
|
||
|
|
|
||
|
|
--
|
||
|
|
Armbian
|
||
|
|
|