--- drivers/hid/hid-multitouch.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c index 04a014cd2a2f..7a7918191628 100644 --- a/drivers/hid/hid-multitouch.c +++ b/drivers/hid/hid-multitouch.c @@ -212,6 +212,7 @@ static void mt_post_parse(struct mt_device *td, struct mt_application *app); #define MT_CLS_GOOGLE 0x0111 #define MT_CLS_RAZER_BLADE_STEALTH 0x0112 #define MT_CLS_SMART_TECH 0x0113 +#define MT_CLS_HP_SPECTRE_ELAN_HAPTIC 0x0114 #define MT_DEFAULT_MAXCONTACT 10 #define MT_MAX_MAXCONTACT 250 @@ -396,6 +397,13 @@ static const struct mt_class mt_classes[] = { MT_QUIRK_CONTACT_CNT_ACCURATE | MT_QUIRK_SEPARATE_APP_REPORT, }, + { .name = MT_CLS_HP_SPECTRE_ELAN_HAPTIC, + .quirks = MT_QUIRK_ALWAYS_VALID | + MT_QUIRK_SLOT_IS_CONTACTID | + MT_QUIRK_CONTACT_CNT_ACCURATE | + MT_QUIRK_CONFIDENCE | + MT_QUIRK_WIN8_PTP_BUTTONS, + }, { } }; @@ -1992,6 +2000,12 @@ static const struct hid_device_id mt_devices[] = { HID_DEVICE(BUS_I2C, HID_GROUP_MULTITOUCH_WIN_8, USB_VENDOR_ID_ELAN, 0x3148) }, + { .driver_data = MT_CLS_HP_SPECTRE_ELAN_HAPTIC, + HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, 0x32c8) }, + + { .driver_data = MT_CLS_HP_SPECTRE_ELAN_HAPTIC, + HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, 0x310a) }, + /* Elitegroup panel */ { .driver_data = MT_CLS_SERIAL, MT_USB_DEVICE(USB_VENDOR_ID_ELITEGROUP, -- 2.44.0 Signed-off-by: Jon Moeller <jon@xxxxxxxxxx>