lkml.org 
[lkml]   [2015]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v4 2/2] USB: quirks: Apply ALWAYS_POLL to all ELAN devices
    Date
    All ELAN hid devices seem to require the ALWAYS_POLL quirk. Let's use
    this quirk for all devices from this vendor, rather than maintaining a
    list of all its known product IDs.

    Tested-by: Adrien Vergé <adrienverge@gmail.com>
    Signed-off-by: Adrien Vergé <adrienverge@gmail.com>
    ---
    drivers/hid/hid-ids.h | 5 -----
    drivers/hid/usbhid/hid-quirks.c | 9 +++------
    2 files changed, 3 insertions(+), 11 deletions(-)

    diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
    index ac1feea..3c7e0c3 100644
    --- a/drivers/hid/hid-ids.h
    +++ b/drivers/hid/hid-ids.h
    @@ -316,11 +316,6 @@
    #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_A001 0xa001

    #define USB_VENDOR_ID_ELAN 0x04f3
    -#define USB_DEVICE_ID_ELAN_TOUCHSCREEN 0x0089
    -#define USB_DEVICE_ID_ELAN_TOUCHSCREEN_009B 0x009b
    -#define USB_DEVICE_ID_ELAN_TOUCHSCREEN_0103 0x0103
    -#define USB_DEVICE_ID_ELAN_TOUCHSCREEN_010c 0x010c
    -#define USB_DEVICE_ID_ELAN_TOUCHSCREEN_016F 0x016f

    #define USB_VENDOR_ID_ELECOM 0x056e
    #define USB_DEVICE_ID_ELECOM_BM084 0x0061
    diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c
    index 94bb137..b1af008 100644
    --- a/drivers/hid/usbhid/hid-quirks.c
    +++ b/drivers/hid/usbhid/hid-quirks.c
    @@ -72,11 +72,7 @@ static const struct hid_blacklist {
    { USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE, HID_QUIRK_ALWAYS_POLL },
    { USB_VENDOR_ID_DMI, USB_DEVICE_ID_DMI_ENC, HID_QUIRK_NOGET },
    { USB_VENDOR_ID_DRAGONRISE, USB_DEVICE_ID_DRAGONRISE_WIIU, HID_QUIRK_MULTI_INPUT },
    - { USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN, HID_QUIRK_ALWAYS_POLL },
    - { USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_009B, HID_QUIRK_ALWAYS_POLL },
    - { USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_0103, HID_QUIRK_ALWAYS_POLL },
    - { USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_010c, HID_QUIRK_ALWAYS_POLL },
    - { USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_016F, HID_QUIRK_ALWAYS_POLL },
    + { USB_VENDOR_ID_ELAN, HID_ANY_ID, HID_QUIRK_ALWAYS_POLL },
    { USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_TS2700, HID_QUIRK_NOGET },
    { USB_VENDOR_ID_FORMOSA, USB_DEVICE_ID_FORMOSA_IR_RECEIVER, HID_QUIRK_NO_INIT_REPORTS },
    { USB_VENDOR_ID_FREESCALE, USB_DEVICE_ID_FREESCALE_MX28, HID_QUIRK_NOGET },
    @@ -339,7 +335,8 @@ static const struct hid_blacklist *usbhid_exists_squirk(const u16 idVendor,

    for (; hid_blacklist[n].idVendor; n++)
    if (hid_blacklist[n].idVendor == idVendor &&
    - hid_blacklist[n].idProduct == idProduct)
    + (hid_blacklist[n].idProduct == HID_ANY_ID ||
    + hid_blacklist[n].idProduct == idProduct))
    bl_entry = &hid_blacklist[n];

    if (bl_entry != NULL)
    --
    2.4.3


    \
     
     \ /
      Last update: 2015-11-24 16:21    [W:2.629 / U:0.048 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site