06 Apr, 2019

2 commits

  • [ Upstream commit 2edefc056e4f0e6ec9508dd1aca2c18fa320efef ]

    Host driver should handle interrupt mask register earlier than wake up ish FW
    else there will be conditions when FW interrupt comes, host PIMR register still
    not set ready, so move the interrupt mask setting before ish_wakeup.

    Clear PISR busy_clear bit in ish_irq_handler. If not clear, there will be
    conditions host driver received a busy_clear interrupt (before the busy_clear
    mask bit is ready), it will return IRQ_NONE after check_generated_interrupt,
    the interrupt will never be cleared, causing the DEVICE not sending following
    IRQ.

    Since PISR clear should not be called for the CHV device we do this change.
    After the change, both ISH2HOST interrupt and busy_clear interrupt will be
    considered as interrupt from ISH, busy_clear interrupt will return IRQ_HANDLED
    from IPC_IS_BUSY check.

    Signed-off-by: Song Hongyan
    Acked-by: Srinivas Pandruvada
    Signed-off-by: Jiri Kosina
    Signed-off-by: Sasha Levin

    Song Hongyan
     
  • [ Upstream commit 0d28f49412405d87d3aae83da255070a46e67627 ]

    When performing a warm reset in ishtp bus driver, the ishtp_cl_device
    will not be removed, its fw_client still points to the already freed
    ishtp_device.fw_clients array.

    Later after driver finishing ishtp client enumeration, this dangling
    pointer may cause driver to bind the wrong ishtp_cl_device to the new
    client, causing wrong callback to be called for messages intended for
    the new client.

    This helps in development of firmware where frequent switching of
    firmwares is required without Linux reboot.

    Signed-off-by: Hong Liu
    Tested-by: Hongyan Song
    Acked-by: Srinivas Pandruvada
    Signed-off-by: Jiri Kosina
    Signed-off-by: Sasha Levin

    Hong Liu
     

13 Feb, 2019

2 commits

  • commit 13054abbaa4f1fd4e6f3b4b63439ec033b4c8035 upstream.

    Ring buffer implementation in hid_debug_event() and hid_debug_events_read()
    is strange allowing lost or corrupted data. After commit 717adfdaf147
    ("HID: debug: check length before copy_to_user()") it is possible to enter
    an infinite loop in hid_debug_events_read() by providing 0 as count, this
    locks up a system. Fix this by rewriting the ring buffer implementation
    with kfifo and simplify the code.

    This fixes CVE-2019-3819.

    v2: fix an execution logic and add a comment
    v3: use __set_current_state() instead of set_current_state()

    Link: https://bugzilla.redhat.com/show_bug.cgi?id=1669187
    Cc: stable@vger.kernel.org # v4.18+
    Fixes: cd667ce24796 ("HID: use debugfs for events/reports dumping")
    Fixes: 717adfdaf147 ("HID: debug: check length before copy_to_user()")
    Signed-off-by: Vladis Dronov
    Reviewed-by: Oleg Nesterov
    Signed-off-by: Benjamin Tissoires
    Signed-off-by: Greg Kroah-Hartman

    Vladis Dronov
     
  • [ Upstream commit 6ae16dfb61bce538d48b7fe98160fada446056c5 ]

    In lenovo_probe_tpkbd(), the function of_led_classdev_register() could
    return an error value that is unchecked. The fix adds these checks.

    Signed-off-by: Aditya Pakki
    Signed-off-by: Jiri Kosina
    Signed-off-by: Sasha Levin

    Aditya Pakki
     

13 Jan, 2019

1 commit

  • [ Upstream commit 4050207485e47e00353e87f2fe2166083e282688 ]

    The 258a:6a88 keyboard-dock shipped with the Prowise PT301 tablet is
    likely another ITE based design. The controller die is directly bonded
    to the PCB with a blob of black glue on top so there are no markings and
    the 258a vendor-id used is unknown anywhere. But the keyboard has the
    exact same hotkeys mapped to Fn+F1 - F10 as the other ITE8595 keyboard
    I have *and* it has the same quirky behavior wrt the rfkill hotkey.

    Either way as said this keyboard has the same quirk for its rfkill /
    airplane mode hotkey as the ITE 8595 chip, it only sends a single release
    event when pressed and released, it never sends a press event.

    This commit adds the 258a:6a88 USB id to the hid-ite id-table, fixing
    the rfkill key not working on this keyboard.

    Signed-off-by: Hans de Goede
    Signed-off-by: Benjamin Tissoires
    Signed-off-by: Sasha Levin

    Hans de Goede
     

21 Dec, 2018

1 commit

  • [ Upstream commit 10f91c73cc41ceead210a905dbd196398e99c7d2 ]

    It makes little sense but still possible to put Hyper-V guests into
    suspend-to-idle state. To wake them up two wakeup sources were registered
    in the past: hyperv-keyboard and hid-hyperv. However, since
    commit eed4d47efe95 ("ACPI / sleep: Ignore spurious SCI wakeups from
    suspend-to-idle") pm_wakeup_event() from these devices is ignored. Switch
    to pm_wakeup_hard_event() API as these devices are actually the only
    possible way to wakeup Hyper-V guests.

    Fixes: eed4d47efe95 (ACPI / sleep: Ignore spurious SCI wakeups from suspend-to-idle)
    Reviewed-by: Rafael J. Wysocki
    Acked-by: K. Y. Srinivasan
    Acked-by: Jiri Kosina
    Signed-off-by: Vitaly Kuznetsov
    Signed-off-by: Dmitry Torokhov
    Signed-off-by: Sasha Levin

    Vitaly Kuznetsov
     

13 Dec, 2018

4 commits

  • commit 868613f1c0ccf7b832f38b48b18cca31cdeb3d26 upstream.

    SNES RetroPort and RetroPad register only 4 gamepad buttons
    when they should register all 8 buttons. This is described here:

    https://ask.fedoraproject.org/en/question/128102

    This is happening because of:

    Commit 190d7f02ce8e ("HID: input: do not increment usages when
    duplicate is found")

    Here, I add the quirk HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE
    (created for backward compatibility with the change in 190d7f02ce8e)
    for the two products.

    Tested with both RetroPort and RetroPad.

    Cc: stable@vger.kernel.org # v4.18+

    Signed-off-by: Nic Soudée
    Signed-off-by: Benjamin Tissoires
    Signed-off-by: Greg Kroah-Hartman

    Nic Soudée
     
  • [ Upstream commit 12d43aacf9a74d0eb66fd0ea54ebeb79ca28940f ]

    Cirque Touchpad/Pointstick combo is similar to Alps devices, it requires
    MT_CLS_WIN_8_DUAL to expose its pointstick as a mouse.

    Signed-off-by: Kai-Heng Feng
    Signed-off-by: Jiri Kosina
    Signed-off-by: Sasha Levin

    Kai-Heng Feng
     
  • [ Upstream commit 4d26d1d1e8065bb3326a7c06d5d4698e581443a9 ]

    This reverts commit 336fd4f5f25157e9e8bd50e898a1bbcd99eaea46.

    Please note that `strlcpy()` does *NOT* do what you think it does.
    strlcpy() *ALWAYS* reads the full input string, regardless of the
    'length' parameter. That is, if the input is not zero-terminated,
    strlcpy() will *READ* beyond input boundaries. It does this, because it
    always returns the size it *would* copy if the target was big enough,
    not the truncated size it actually copied.

    The original code was perfectly fine. The hid device is
    zero-initialized and the strncpy() functions copied up to n-1
    characters. The result is always zero-terminated this way.

    This is the third time someone tried to replace strncpy with strlcpy in
    this function, and gets it wrong. I now added a comment that should at
    least make people reconsider.

    Signed-off-by: David Herrmann
    Signed-off-by: Jiri Kosina
    Signed-off-by: Sasha Levin

    David Herrmann
     
  • [ Upstream commit 0fd791841a6d67af1155a9c3de54dea51220721e ]

    The Motorola/Zebra Symbol DS4308-HD is a handheld USB barcode scanner
    which does not have a battery, but reports one anyway that always has
    capacity 2.

    Let's apply the IGNORE quirk to prevent it from being treated like a
    power supply so that userspaces don't get confused that this
    accessory is almost out of power and warn the user that they need to charge
    their wired barcode scanner.

    Reported here: https://bugs.chromium.org/p/chromium/issues/detail?id=804720

    Signed-off-by: Benson Leung
    Reviewed-by: Benjamin Tissoires
    Signed-off-by: Benjamin Tissoires
    Signed-off-by: Sasha Levin

    Benson Leung
     

06 Dec, 2018

1 commit

  • commit 0145b50566e7de5637e80ecba96c7f0e6fff1aad upstream.

    Before this commit sensor_hub_input_attr_get_raw_value() failed to take
    the signedness of 16 and 8 bit values into account, returning e.g.
    65436 instead of -100 for the z-axis reading of an accelerometer.

    This commit adds a new is_signed parameter to the function and makes all
    callers pass the appropriate value for this.

    While at it, this commit also fixes up some neighboring lines where
    statements were needlessly split over 2 lines to improve readability.

    Signed-off-by: Hans de Goede
    Acked-by: Srinivas Pandruvada
    Acked-by: Benjamin Tissoires
    Cc:
    Signed-off-by: Jonathan Cameron
    Signed-off-by: Greg Kroah-Hartman

    Hans de Goede
     

01 Dec, 2018

1 commit

  • commit 385a4886778f6d6e61eff1d4d295af332d7130e1 upstream.

    Previously, when a HID client such as the Steam Client was running, this
    driver disabled its input device to avoid doubling the input events.

    While it worked mostly fine, some games got confused by the idle gamepad,
    and switched to two player mode, or asked the user to choose which gamepad
    to use. Other games just crashed, probably a bug in Unity [1].

    With this commit, when a HID client starts, the input device is removed;
    when the HID client ends the input device is recreated.

    [1]: https://github.com/ValveSoftware/steam-for-linux/issues/5645

    Signed-off-by: Rodrigo Rivas Costa
    Signed-off-by: Jiri Kosina
    Cc: Pierre-Loup Griffais
    Signed-off-by: Greg Kroah-Hartman

    Rodrigo Rivas Costa
     

27 Nov, 2018

6 commits

  • commit e82e62e390d39c3819641cd721695702180d54fb upstream.

    The PixArt OEM mice are known for disconnecting every minute in
    runlevel 1 or 3 if they are not always polled. So add quirk
    ALWAYS_POLL for this one as well.

    References:
    https://www.spinics.net/lists/linux-usb/msg88965.html
    http://linet.gr.jp/~kojima/PlamoWeb/ML/htdocs/201808/msg00019.html

    Signed-off-by: Sebastian Parschauer
    CC: stable@vger.kernel.org
    Signed-off-by: Jiri Kosina
    Signed-off-by: Greg Kroah-Hartman

    Sebastian Parschauer
     
  • commit fb862c3b199d28bee238d52e8270eae8650d6cb0 upstream.

    The PixArt OEM mice are known for disconnecting every minute in
    runlevel 1 or 3 if they are not always polled. So add quirk
    ALWAYS_POLL for two Primax mice as well.

    0x4e22 is the Dell MS111-P and 0x4d0f is the unbranded HP Portia
    mouse HP 697738-001. Both were built until approx. 2014.
    Those were the standard mice from those vendors and are still
    around - even as new old stock.

    Reference: https://github.com/sriemer/fix-linux-mouse/issues/11

    Signed-off-by: Sebastian Parschauer
    CC: stable@vger.kernel.org
    Signed-off-by: Jiri Kosina
    Signed-off-by: Greg Kroah-Hartman

    Sebastian Parschauer
     
  • commit 8c01db7619f07c85c5cd81ec5eb83608b56c88f5 upstream.

    When a UHID_CREATE command is written to the uhid char device, a
    copy_from_user() is done from a user pointer embedded in the command.
    When the address limit is KERNEL_DS, e.g. as is the case during
    sys_sendfile(), this can read from kernel memory. Alternatively,
    information can be leaked from a setuid binary that is tricked to write
    to the file descriptor. Therefore, forbid UHID_CREATE in these cases.

    No other commands in uhid_char_write() are affected by this bug and
    UHID_CREATE is marked as "obsolete", so apply the restriction to
    UHID_CREATE only rather than to uhid_char_write() entirely.

    Thanks to Dmitry Vyukov for adding uhid definitions to syzkaller and to
    Jann Horn for commit 9da3f2b740544 ("x86/fault: BUG() when uaccess
    helpers fault on kernel addresses"), allowing this bug to be found.

    Reported-by: syzbot+72473edc9bf4eb1c6556@syzkaller.appspotmail.com
    Fixes: d365c6cfd337 ("HID: uhid: add UHID_CREATE and UHID_DESTROY events")
    Cc: # v3.6+
    Cc: Jann Horn
    Cc: Andy Lutomirski
    Signed-off-by: Eric Biggers
    Reviewed-by: Jann Horn
    Signed-off-by: Jiri Kosina
    Signed-off-by: Greg Kroah-Hartman

    Eric Biggers
     
  • [ Upstream commit 7dd8db68949a7acc5bd528ee0ecb8f8720f49921 ]

    If userspace only reads the trackstick node, and no one is listening to
    the touchpad nor the hidraw node then, the device is not powered on.

    Add open/close callbacks to allow users to disable the touchpad in Gnome
    while keeping the trackstick active.

    Link: https://bugzilla.redhat.com/show_bug.cgi?id=1559632
    Link: https://gitlab.gnome.org/GNOME/mutter/issues/128
    Signed-off-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina
    Signed-off-by: Sasha Levin

    Benjamin Tissoires
     
  • [ Upstream commit 6298944d8f57f40ee2a3e6dcea1253e78d7a9969 ]

    This reverts commit 67ddbb3e6568fb1820b2cc45b00c50702b114801.

    67ddbb3e656 ("HID: add NOGET quirk for Eaton Ellipse MAX UPS") was reported
    by Laurent Bigonville. It turns out that a later model Laurent got
    doesn't need the quirk after all.

    My take is that Eaton upgraded their firmwares, so we don't need it
    anymore.

    The old model was from 2012, so better make sure the new line works
    properly by removing the quirk. This allows upower to actually fetch
    the current data.

    Reported-by: Laurent Bigonville
    Signed-off-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina
    Signed-off-by: Sasha Levin

    Benjamin Tissoires
     
  • [ Upstream commit 00b790ea545b6ef30221adef6e9c3707e03b82b5 ]

    Raydium touchpanel (2386:4B33) sometimes does not work in desktop session
    although it works in display manager.

    During user logging, the display manager exits, close the HID device,
    then the device gets runtime suspended and powered off. The desktop
    session begins shortly after, opens the HID device, then the device gets
    runtime resumed and powered on.

    If the trasition from display manager to desktop sesesion is fast, the
    touchpanel cannot switch from powered off to powered on in short
    timeframe. So add a small delay to workaround the issue.

    Signed-off-by: Kai-Heng Feng
    Reviewed-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina
    Signed-off-by: Sasha Levin

    Kai-Heng Feng
     

14 Nov, 2018

2 commits

  • commit f11274396a538b31bc010f782e05c2ce3f804c13 upstream.

    uref->usage_index can be indirectly controlled by userspace, hence leading
    to a potential exploitation of the Spectre variant 1 vulnerability.

    This field is used as an array index by the hiddev_ioctl_usage() function,
    when 'cmd' is either HIDIOCGCOLLECTIONINDEX, HIDIOCGUSAGES or
    HIDIOCSUSAGES.

    For cmd == HIDIOCGCOLLECTIONINDEX case, uref->usage_index is compared to
    field->maxusage and then used as an index to dereference field->usage
    array. The same thing happens to the cmd == HIDIOC{G,S}USAGES cases, where
    uref->usage_index is checked against an array maximum value and then it is
    used as an index in an array.

    This is a summary of the HIDIOCGCOLLECTIONINDEX case, which matches the
    traditional Spectre V1 first load:

    copy_from_user(uref, user_arg, sizeof(*uref))
    if (uref->usage_index >= field->maxusage)
    goto inval;
    i = field->usage[uref->usage_index].collection_index;
    return i;

    This patch fixes this by sanitizing field uref->usage_index before using it
    to index field->usage (HIDIOCGCOLLECTIONINDEX) or field->value in
    HIDIOC{G,S}USAGES arrays, thus, avoiding speculation in the first load.

    Cc:
    Signed-off-by: Breno Leitao
    v2: Contemplate cmd == HIDIOC{G,S}USAGES case
    Signed-off-by: Jiri Kosina
    Signed-off-by: Greg Kroah-Hartman

    Breno Leitao
     
  • commit 11db8173dbab7a94cf5ba5225fcedbfc0f3b7e54 upstream.

    The DTK-2451 and DTH-2452 have a buggy HID descriptor which incorrectly
    contains a Cintiq-like report, complete with pen tilt, rotation, twist, serial
    number, etc. The hardware doesn't actually support this data but our driver
    duitifully sets up the device as though it does. To ensure userspace has a
    correct view of devices without updated firmware, we clean up this incorrect
    data in wacom_setup_device_quirks.

    We're also careful to clear the WACOM_QUIRK_TOOLSERIAL flag since its presence
    causes the driver to wait for serial number information (via
    wacom_wac_pen_serial_enforce) that never comes, resulting in
    the pen being non-responsive.

    Signed-off-by: Jason Gerecke
    Fixes: 8341720642 ("HID: wacom: Queue events with missing type/serial data for later processing")
    Cc: stable@vger.kernel.org # v4.16+
    Signed-off-by: Jiri Kosina
    Signed-off-by: Greg Kroah-Hartman

    Jason Gerecke
     

24 Sep, 2018

2 commits

  • Added PCI ID for Ice Lake mobile platform.

    Signed-off-by: Srinivas Pandruvada
    Signed-off-by: Jiri Kosina

    Srinivas Pandruvada
     
  • Commit 52cf93e63ee6 ("HID: i2c-hid: Don't reset device upon system resume")
    removes the need for the RESEND_REPORT_DESCR quirk for Raydium devices, but
    kept it for the SIS device id 10FB touchscreens, as the author of that
    commit could not determine if the quirk is still necessary there.

    I've tested suspend/resume on a Toshiba Click Mini L9W-B which is the
    device for which this quirk was added in the first place and with the
    "Don't reset device upon system resume" fix the quirk is no longer
    necessary, so this commit removes it.

    Note even better I also had some other devices with SIS touchscreens which
    suspend/resume issues, where the RESEND_REPORT_DESCR quirk did not help.

    I've also tested these devices with the "Don't reset device upon system
    resume" fix and I'm happy to report that that fix also fixes touchscreen
    resume on the following devices:

    Asus T100HA
    Asus T200TA
    Peaq C1010

    Cc: Kai-Heng Feng
    Acked-by: Benjamin Tissoires
    Signed-off-by: Hans de Goede
    Signed-off-by: Jiri Kosina

    Hans de Goede
     

14 Sep, 2018

1 commit

  • This hantick HTIX5288 touchpad can quickly fall in a wrong state if
    there are too many open/close operations. This will either make it stop
    reporting any input, or will shift all the input reads by a few bytes,
    making it impossible to decode.

    Here, we never release the probed touchpad runtime pm while the driver
    is loaded, which should disable all runtime pm suspend/resumes.

    This fast repetition of sleep/wakeup is also more likely to happen when
    using runtime PM, which is why the quirk is done there, and not for all
    power downs, which would include suspend or module removal.

    Signed-off-by: Anisse Astier
    Cc: stable@vger.kernel.org
    Acked-by: Benjamin Tissoires
    Reviewed-by: Hans de Goede
    Tested-by: Philip Müller
    Signed-off-by: Jiri Kosina

    Anisse Astier
     

06 Sep, 2018

1 commit

  • 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
    Cc: AceLan Kao
    Signed-off-by: Kai-Heng Feng
    Reviewed-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina

    Kai-Heng Feng
     

05 Sep, 2018

4 commits

  • Commit b0f847e16c1e ("HID: hid-sensor-hub: Force logical minimum to 1 for
    power and report state") not only replaced the descriptor fixup done for
    devices with the HID_SENSOR_HUB_ENUM_QUIRK with a generic fix, but also
    accidentally removed the unrelated descriptor fixup for the Lenovo ThinkPad
    Helix 2 sensor hub. This commit restores this fixup.

    Restoring this fixup not only fixes the Lenovo ThinkPad Helix 2's sensors,
    but also the Lenovo ThinkPad 8's sensors.

    Fixes: b0f847e16c1e ("HID: hid-sensor-hub: Force logical minimum ...")
    Cc: Srinivas Pandruvada
    Cc: Fernando D S Lima
    Acked-by: Srinivas Pandruvada
    Signed-off-by: Hans de Goede
    Signed-off-by: Jiri Kosina

    Hans de Goede
     
  • There is a NULL pointer dereference in case memory resources
    for *parse* are not successfully allocated.

    Fix this by adding a new goto label and make the execution
    path jump to it in case vzalloc() fails.

    Addresses-Coverity-ID: 1473081 ("Dereference after null check")
    Fixes: b2dd9f2e5a8a ("HID: core: fix memory leak on probe")
    Signed-off-by: Gustavo A. R. Silva
    Reviewed-by: Stefan Agner
    Signed-off-by: Jiri Kosina

    Gustavo A. R. Silva
     
  • commit f07b3c1da92d ("HID: generic: create one input report per
    application type") was effectively the same as MULTI_INPUT:
    hidinput->report was never set, so hidinput_match_application()
    always returned null.

    Fix that by testing against the real application.

    Note that this breaks some old eGalax touchscreens that expect MULTI_INPUT
    instead of HID_QUIRK_INPUT_PER_APP. Enable this quirk for backward
    compatibility on all non-Win8 touchscreens.

    link: https://bugzilla.kernel.org/show_bug.cgi?id=200847
    link: https://bugzilla.kernel.org/show_bug.cgi?id=200849
    link: https://bugs.archlinux.org/task/59699
    link: https://github.com/NixOS/nixpkgs/issues/45165

    Cc: stable@vger.kernel.org # v4.18+
    Signed-off-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina

    Benjamin Tissoires
     
  • When implementing commit 7f81c8db5489 ("HID: multitouch: simplify
    the settings of the various features"), I wrongly removed a test
    that made sure we never try to set the second InputMode feature
    to something else than 0.

    This broke badly some recent Elan panels that now forget to send the
    click button in some area of the touchpad.

    Link: https://bugzilla.kernel.org/show_bug.cgi?id=200899
    Fixes: 7f81c8db5489 ("HID: multitouch: simplify the settings of the various features")
    Cc: stable@vger.kernel.org # v4.18+
    Signed-off-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina

    Benjamin Tissoires
     

30 Aug, 2018

1 commit


28 Aug, 2018

5 commits

  • The dynamically allocted collection stack does not get freed in
    all situations. Make sure to also free the collection stack when
    using the parser in hid_open_report().

    Fixes: 08a8a7cf1459 ("HID: core: do not upper bound the collection stack")
    Signed-off-by: Stefan Agner
    Signed-off-by: Jiri Kosina

    Stefan Agner
     
  • Make sure to free the custom input node name on disconnect.

    Cc: stable@vger.kernel.org # v4.18+
    Fixes: c554bb045511 ("HID: input: append a suffix matching the application")
    Signed-off-by: Stefan Agner
    Signed-off-by: Jiri Kosina

    Stefan Agner
     
  • USB device
    Vendor 05ac (Apple)
    Device 026c (Magic Keyboard with Numeric Keypad)

    Bluetooth devices
    Vendor 004c (Apple)
    Device 0267 (Magic Keyboard)
    Device 026c (Magic Keyboard with Numeric Keypad)

    Support already exists for the Magic Keyboard over USB connection.
    Add support for the Magic Keyboard over Bluetooth connection, and for
    the Magic Keyboard with Numeric Keypad over Bluetooth and USB
    connection.

    Signed-off-by: Sean O'Brien
    Reviewed-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina

    Sean O'Brien
     
  • The incomplete report flooded after S3 and touchscreen becomes
    malfunctioned.
    [ 1367.646244] i2c_hid i2c-CUST0000:00: i2c_hid_get_input: incomplete report (58/18785)
    [ 1367.649471] i2c_hid i2c-CUST0000:00: i2c_hid_get_input: incomplete report (58/28743)
    [ 1367.651092] i2c_hid i2c-CUST0000:00: i2c_hid_get_input: incomplete report (58/26757)
    [ 1367.652658] i2c_hid i2c-CUST0000:00: i2c_hid_get_input: incomplete report (58/52280)
    [ 1367.654287] i2c_hid i2c-CUST0000:00: i2c_hid_get_input: incomplete report (58/56059)

    Adding device ID, 04F3:30CC, to the quirk to re-send report description
    after resume.

    Cc: stable@vger.kernel.org
    Signed-off-by: AceLan Kao
    Reviewed-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina

    AceLan Kao
     
  • Added PCI ID for Sunrise Point-H ISH.

    Signed-off-by: Andreas Bosch
    Acked-by: Srinivas Pandruvada
    Signed-off-by: Jiri Kosina

    Andreas Bosch
     

21 Aug, 2018

6 commits

  • Pull HID updates from Jiri Kosina:

    - touch_max detection improvements and quirk handling fixes in wacom
    driver from Jason Gerecke and Ping Cheng

    - Palm rejection from Dmitry Torokhov and _dial support from Benjamin
    Tissoires for hid-multitouch driver

    - Low voltage support for i2c-hid driver from Stephen Boyd

    - Guitar-Hero support from Nicolas Adenis-Lamarre

    - other assorted small fixes and device ID additions

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (40 commits)
    HID: intel_ish-hid: tx_buf memory leak on probe/remove
    HID: intel-ish-hid: Prevent loading of driver on Mehlow
    HID: cougar: Add support for the Cougar 500k Gaming Keyboard
    HID: cougar: make compare_device_paths reusable
    HID: intel-ish-hid: remove redundant variable num_frags
    HID: multitouch: handle palm for touchscreens
    HID: multitouch: touchscreens also use confidence reports
    HID: multitouch: report MT_TOOL_PALM for non-confident touches
    HID: microsoft: support the Surface Dial
    HID: core: do not upper bound the collection stack
    HID: input: enable Totem on the Dell Canvas 27
    HID: multitouch: remove one copy of values
    HID: multitouch: ditch mt_report_id
    HID: multitouch: store a per application quirks value
    HID: multitouch: Store per collection multitouch data
    HID: multitouch: make sure the static list of class is not changed
    input: add MT_TOOL_DIAL
    HID: elan: Add support for touchpad on the Toshiba Click Mini L9W
    HID: elan: Add USB-id for HP x2 10-n000nd touchpad
    HID: elan: Add a flag for selecting if the touchpad has a LED
    ...

    Linus Torvalds
     
  • Guitar-Hero devices support for hid-wiimote

    Jiri Kosina
     
  • Wacom driver updates:

    - touch_max detection improvements
    - quirk handling cleanup
    - get rid of wacom custom usages

    Jiri Kosina
     
  • Assorted small driver/core fixes.

    Jiri Kosina
     
  • devm_* API conversion for hid-sony

    Jiri Kosina
     
  • Multitouch updates:

    - Dial support
    - Palm rejection for touchscreens
    - a few small assorted fixes

    Jiri Kosina