• Kai-Heng Feng's avatar
    HID: i2c-hid: Don't reset device upon system resume · 52cf93e6
    Kai-Heng Feng authored
    Raydium touchscreen triggers interrupt storm after system-wide suspend:
    
    	[ 179.085033] i2c_hid i2c-CUST0000:00: i2c_hid_get_input: incomplete report (58/65535)
    
    According to Raydium, Windows driver does not reset the device after system
    resume.
    
    The HID over I2C spec does specify a reset should be used at intialization, but
    it doesn't specify if reset is required for system suspend.
    
    Tested this patch on other i2c-hid touchpanels I have and those touchpanels do
    work after S3 without doing reset. If any regression happens to other
    touchpanel vendors, we can use quirk for Raydium devices.
    
    There's still one device uses I2C_HID_QUIRK_RESEND_REPORT_DESCR so keep it
    there.
    
    Cc: Aaron Ma <aaron.ma@canonical.com>
    Cc: AceLan Kao <acelan.kao@canonical.com>
    Signed-off-by: default avatarKai-Heng Feng <kai.heng.feng@canonical.com>
    Reviewed-by: default avatarBenjamin Tissoires <benjamin.tissoires@gmail.com>
    Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
    52cf93e6
i2c-hid.c 32.3 KB