HID: i2c-hid: fix no irq after reset on raydium 3118
authorAaron Ma <aaron.ma@canonical.com>
Wed, 13 Nov 2019 19:12:47 +0000 (03:12 +0800)
committerJiri Kosina <jkosina@suse.cz>
Fri, 15 Nov 2019 15:19:03 +0000 (16:19 +0100)
On some ThinkPad L390 some raydium 3118 touchscreen devices
doesn't response any data after reset, but some does.

Add this ID to no irq quirk,
then don't wait for any response alike on these touchscreens.
All kinds of raydium 3118 devices work fine.

BugLink: https://bugs.launchpad.net/bugs/1849721
Signed-off-by: Aaron Ma <aaron.ma@canonical.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-ids.h
drivers/hid/i2c-hid/i2c-hid-core.c

index 0090453..6273e71 100644 (file)
 
 #define I2C_VENDOR_ID_RAYDIUM          0x2386
 #define I2C_PRODUCT_ID_RAYDIUM_4B33    0x4b33
+#define I2C_PRODUCT_ID_RAYDIUM_3118    0x3118
 
 #define USB_VENDOR_ID_RAZER            0x1532
 #define USB_DEVICE_ID_RAZER_BLADE_14   0x011D
index 04c0881..7608ee0 100644 (file)
@@ -170,6 +170,8 @@ static const struct i2c_hid_quirks {
                I2C_HID_QUIRK_SET_PWR_WAKEUP_DEV },
        { I2C_VENDOR_ID_HANTICK, I2C_PRODUCT_ID_HANTICK_5288,
                I2C_HID_QUIRK_NO_IRQ_AFTER_RESET },
+       { I2C_VENDOR_ID_RAYDIUM, I2C_PRODUCT_ID_RAYDIUM_3118,
+               I2C_HID_QUIRK_NO_IRQ_AFTER_RESET },
        { USB_VENDOR_ID_ELAN, HID_ANY_ID,
                 I2C_HID_QUIRK_BOGUS_IRQ },
        { 0, 0 }