HID: multitouch: specify that Apple Touch Bar is direct

Currently the driver determines the device type based on the
application, but this value is not reliable on Apple Touch Bar, where
the application is HID_DG_TOUCHPAD even though this device is direct,
so add a quirk 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>
Signed-off-by: Jiri Kosina <jkosina@suse.com>
This commit is contained in:
Kerem Karabay
2025-05-27 22:13:16 +05:30
committed by Jiri Kosina
parent 7dfe48bdc9
commit 45ca23c5ee

View File

@@ -1349,6 +1349,13 @@ static int mt_touch_input_configured(struct hid_device *hdev,
if (td->serial_maybe)
mt_post_parse_default_settings(td, app);
/*
* The application for Apple Touch Bars is HID_DG_TOUCHPAD,
* but these devices are direct.
*/
if (cls->quirks & MT_QUIRK_APPLE_TOUCHBAR)
app->mt_flags |= INPUT_MT_DIRECT;
if (cls->is_indirect)
app->mt_flags |= INPUT_MT_POINTER;