03 Aug, 2016

3 commits

  • Some ASUS laptops were shipped with touchpads that require to be woken up
    first, before trying to switch them into absolute reporting mode, otherwise
    touchpad would fail to work while flooding the logs with:

    elan_i2c i2c-ELAN1000:00: invalid report id data (1)

    Among affected devices are Asus E202SA, N552VW, X456UF, UX305CA, and
    others. We detect such devices by checking the IC type and product ID
    numbers and adjusting order of operations accordingly.

    Signed-off-by: KT Liao
    Reported-by: Chris Chiu
    Reported-by: Vlad Glagolev
    Tested-by: Vlad Glagolev
    Cc: stable@vger.kernel.org
    Signed-off-by: Dmitry Torokhov

    KT Liao
     
  • This driver adds support for Silead touchscreens. It has been tested
    with GSL1680 and GSL3680 touch panels.

    It supports ACPI and device tree enumeration. Screen resolution,
    the maximum number of fingers supported and firmware name are
    configurable.

    Signed-off-by: Robert Dolca
    Signed-off-by: Daniel Jansen
    Signed-off-by: Hans de Goede
    Signed-off-by: Dmitry Torokhov

    Robert Dolca
     
  • The use of mixed psmouse_printk() and printk creates 2 lines in the log,
    while the use of %*ph solves everything.

    Signed-off-by: Benjamin Tissoires
    Signed-off-by: Dmitry Torokhov

    Benjamin Tissoires
     

28 Jul, 2016

3 commits

  • It's not advisable to use this encoding, but to support existing devices
    add support for this to the driver.

    Signed-off-by: Uwe Kleine-König
    Acked-by: Rob Herring
    Signed-off-by: Dmitry Torokhov

    Uwe Kleine-König
     
  • When the USB wireless adapter is suspended, the controllers
    lose their connection. This causes them to start flashing
    their LED rings and searching for the wireless adapter
    again, wasting the controller's battery power.

    Instead, we will tell the controllers to power down when
    we suspend. This mirrors the behavior of the controllers
    when connected to the console itself and how the official
    Xbox One wireless adapter behaves on Windows.

    Signed-off-by: Cameron Gutman
    Signed-off-by: Dmitry Torokhov

    Cameron Gutman
     
  • As explained in 1407814240-4275-1-git-send-email-decui@microsoft.com we
    have a hard load dependency between i8042 and atkbd which prevents
    keyboard from working on Gen2 Hyper-V VMs.

    > hyperv_keyboard invokes serio_interrupt(), which needs a valid serio
    > driver like atkbd.c. atkbd.c depends on libps2.c because it invokes
    > ps2_command(). libps2.c depends on i8042.c because it invokes
    > i8042_check_port_owner(). As a result, hyperv_keyboard actually
    > depends on i8042.c.
    >
    > For a Generation 2 Hyper-V VM (meaning no i8042 device emulated), if a
    > Linux VM (like Arch Linux) happens to configure CONFIG_SERIO_I8042=m
    > rather than =y, atkbd.ko can't load because i8042.ko can't load(due to
    > no i8042 device emulated) and finally hyperv_keyboard can't work and
    > the user can't input: https://bugs.archlinux.org/task/39820
    > (Ubuntu/RHEL/SUSE aren't affected since they use CONFIG_SERIO_I8042=y)

    To break the dependency we move away from using i8042_check_port_owner()
    and instead allow serio port owner specify a mutex that clients should use
    to serialize PS/2 command stream.

    Reported-by: Mark Laws
    Tested-by: Mark Laws
    Cc: stable@vger.kernel.org
    Signed-off-by: Dmitry Torokhov

    Dmitry Torokhov
     

27 Jul, 2016

2 commits

  • The of_node_put() function tests whether its argument is NULL and then
    returns immediately. Thus the test around the call is not needed.

    This issue was detected by using the Coccinelle software.

    Signed-off-by: Markus Elfring
    Signed-off-by: Dmitry Torokhov

    Markus Elfring
     
  • In cros_ec_keyb we stored "dev" in "struct cros_ec_keyb", but this was
    the EC's dev pointer and not the keyboard's. Let's clean this up to
    make it the keyboard's dev pointer. This could be useful in future
    patches but also has the nice effect of changing a few printouts to
    include the name of the keyboard device instead of the EC device, so we
    will see:

    [ 1.224648] cros-ec-keyb ff110000.spi:ec@0:keyboard-controller: valid_keys[00] = 0x14

    instead of:

    [ 1.224505] cros-ec-spi spi0.0: valid_keys[00] = 0x14

    Signed-off-by: Douglas Anderson
    Signed-off-by: Brian Norris
    Signed-off-by: Dmitry Torokhov

    Douglas Anderson
     

21 Jul, 2016

1 commit


20 Jul, 2016

7 commits


16 Jul, 2016

5 commits


15 Jul, 2016

5 commits


14 Jul, 2016

4 commits


30 Jun, 2016

2 commits

  • This prevents a malicious USB device from causing an oops.

    Signed-off-by: Cameron Gutman
    Cc: stable@vger.kernel.org
    Signed-off-by: Dmitry Torokhov

    Cameron Gutman
     
  • Some devices with a pen may have a switch that can be used to detect
    when the pen is inserted or removed to a slot on the device. Let's add
    a define to the input event codes so that everyone can be on the same
    page for what event we should generate when the pen is inserted or
    removed.

    In general the pen switch could be used by the software on the device to
    kick off any number of actions when the pen is inserted or removed.

    Signed-off-by: Douglas Anderson
    Signed-off-by: Dmitry Torokhov

    Douglas Anderson
     

24 Jun, 2016

8 commits