Commit fc6a31b0 authored by Hans de Goede's avatar Hans de Goede Committed by Jiri Kosina
Browse files

HID: i2c-hid: Add I2C_HID_QUIRK_NO_IRQ_AFTER_RESET for ITE8568 EC on Voyo Winpad A15



The ITE8568 EC on the Voyo Winpad A15 presents itself as an I2C-HID
attached keyboard and mouse (which seems to never send any events).

This needs the I2C_HID_QUIRK_NO_IRQ_AFTER_RESET quirk, otherwise we get
the following errors:

[ 3688.770850] i2c_hid i2c-ITE8568:00: failed to reset device.
[ 3694.915865] i2c_hid i2c-ITE8568:00: failed to reset device.
[ 3701.059717] i2c_hid i2c-ITE8568:00: failed to reset device.
[ 3707.205944] i2c_hid i2c-ITE8568:00: failed to reset device.
[ 3708.227940] i2c_hid i2c-ITE8568:00: can't add hid device: -61
[ 3708.236518] i2c_hid: probe of i2c-ITE8568:00 failed with error -61

Which leads to a significant boot delay.

Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
parent 2fad0abd
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -641,6 +641,8 @@
#define USB_DEVICE_ID_INNEX_GENESIS_ATARI	0x4745

#define USB_VENDOR_ID_ITE               0x048d
#define I2C_VENDOR_ID_ITE		0x103c
#define I2C_DEVICE_ID_ITE_VOYO_WINPAD_A15	0x184f
#define USB_DEVICE_ID_ITE_LENOVO_YOGA   0x8386
#define USB_DEVICE_ID_ITE_LENOVO_YOGA2  0x8350
#define I2C_DEVICE_ID_ITE_LENOVO_LEGION_Y720	0x837a
+2 −0
Original line number Diff line number Diff line
@@ -171,6 +171,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_ITE, I2C_DEVICE_ID_ITE_VOYO_WINPAD_A15,
		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,