1. 18 2月, 2017 2 次提交
  2. 17 11月, 2016 1 次提交
    • D
      Input: psmouse - disable automatic probing of BYD touchpads · e9fb7cc6
      Dmitry Torokhov 提交于
      BYD automatic protocol detection is extremely unreliable and is often
      triggers false positives on regular mice, Sentelic touchpads, and other
      devices. BYD has several documents that have recommended detection
      sequence, but they conflict with each other and, as far as I can see, still
      would not produce unique enough output to reliably differentiate BYD from
      other PS/2 devices.
      
      OEMs sourcing BYD devices also do not do us any favors by not supplying any
      reasonable DMI data and instead leaving turds like "To Be Filled By O.E.M."
      in place of vendor data, or "System Serial Number" as serial number.
      
      On top of that BYD is not truly modern multitouch controller, but rather a
      single-touch transitional device that only reports absolute coordinates at
      the beginning of finger contact and then reverts to reporting
      displacements, and thus not very precise; the only benefit from using BYD
      mode vs the legacy PS/2 mode is possibility of edge scrolling.
      
      Given the above, and the fact that BYD devices are somewhat uncommon, let's
      disable automatic detection of BYD devices. Users who know they have BYD
      trackpads or want to experiment can attempt to activate BYD protocol via
      sysfs:
      
      	echo -n "byd" > /sys/bus/serio/devices/serio1/drvctl
      
      Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=151691
      Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=175421
      Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=120781
      Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=121281
      Fixes: 98ee3771 ("Input: byd - add BYD PS/2 touchpad driver")
      Cc: stable@vger.kernel.org # 4.6+
      Reviewed-by: NPali Rohár <pali.rohar@gmail.com>
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      e9fb7cc6
  3. 25 10月, 2016 1 次提交
  4. 20 10月, 2016 1 次提交
    • P
      Input: i8042 - add XMG C504 to keyboard reset table · da25311c
      Patrick Scheuring 提交于
      The Schenker XMG C504 is a rebranded Gigabyte P35 v2 laptop.
      Therefore it also needs a keyboard reset to detect the Elantech touchpad.
      Otherwise the touchpad appears to be dead.
      
      With this patch the touchpad is detected:
      
      $ dmesg | grep -E "(i8042|Elantech|elantech)"
      
      [    2.675399] i8042: PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
      [    2.680372] i8042: Attempting to reset device connected to KBD port
      [    2.789037] serio: i8042 KBD port at 0x60,0x64 irq 1
      [    2.791586] serio: i8042 AUX port at 0x60,0x64 irq 12
      [    2.813840] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input4
      [    3.811431] psmouse serio1: elantech: assuming hardware version 4 (with firmware version 0x361f0e)
      [    3.825424] psmouse serio1: elantech: Synaptics capabilities query result 0x00, 0x15, 0x0f.
      [    3.839424] psmouse serio1: elantech: Elan sample query result 03, 58, 74
      [    3.911349] input: ETPS/2 Elantech Touchpad as /devices/platform/i8042/serio1/input/input6
      Signed-off-by: NPatrick Scheuring <patrick.scheuring.dev@gmail.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      da25311c
  5. 12 10月, 2016 3 次提交
  6. 08 10月, 2016 1 次提交
  7. 05 10月, 2016 6 次提交
  8. 04 10月, 2016 4 次提交
  9. 27 9月, 2016 3 次提交
  10. 21 9月, 2016 1 次提交
    • H
      Input: serio - add hangup support · 51db0137
      Hans Verkuil 提交于
      The Pulse-Eight USB CEC adapter is a usb device that shows up as a ttyACM0
      device.  It requires that you run inputattach in order to communicate with
      it via serio.
      
      This all works well, but it would be nice to have a udev rule to
      automatically start inputattach. That too works OK, but the problem comes
      when the USB device is unplugged: the tty hangup is never handled by the
      serio framework so the inputattach utility never exits and you have to kill
      it manually.
      
      By adding this hangup callback the inputattach utility now properly exits
      as soon as the USB device is unplugged.
      
      The udev rule I used on my Debian sid system is:
      
      SUBSYSTEM=="tty", KERNEL=="ttyACM[0-9]*", ATTRS{idVendor}=="2548", ATTRS{idProduct}=="1002", ACTION=="add", TAG+="systemd", ENV{SYSTEMD_WANTS}+="pulse8-cec-inputattach@%k.service"
      
      And /etc/systemd/system/pulse8-cec-inputattach@.service is as follows:
      
      ===============================================================
      [Unit]
      Description=inputattach for pulse8-cec device on %I
      
      [Service]
      Type=simple
      ExecStart=/usr/local/bin/inputattach --pulse8-cec /dev/%I
      KillMode=process
      ===============================================================
      Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com>
      Tested-by: NHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      51db0137
  11. 20 9月, 2016 3 次提交
    • N
      [media] Input: v4l-touch - add copyright lines · f3c4a8f8
      Nick Dyer 提交于
      Add copyright lines for Zodiac who paid for the V4L touch work.
      Signed-off-by: NNick Dyer <nick@shmanahar.org>
      Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      f3c4a8f8
    • A
      [media] Input: synaptics-rmi4: disallow impossible configuration · 47d8e00c
      Arnd Bergmann 提交于
      The newly added debug mode for the synaptics-rmi4 driver relies on
      the v4l2 interface and vb2_vmalloc, but those might be configured
      as loadable modules when the driver itself is built-in, resulting
      in a link failure:
      
      drivers/input/rmi4/rmi_core.o: In function `rmi_f54_remove':
      rmi_f54.c:(.text.rmi_f54_remove+0x14): undefined reference to `video_unregister_device'
      rmi_f54.c:(.text.rmi_f54_remove+0x20): undefined reference to `v4l2_device_unregister'
      drivers/input/rmi4/rmi_core.o: In function `rmi_f54_vidioc_s_input':
      rmi_f54.c:(.text.rmi_f54_vidioc_s_input+0x10): undefined reference to `video_devdata'
      drivers/input/rmi4/rmi_core.o: In function `rmi_f54_vidioc_g_input':
      rmi_f54.c:(.text.rmi_f54_vidioc_g_input+0x10): undefined reference to `video_devdata'
      drivers/input/rmi4/rmi_core.o: In function `rmi_f54_vidioc_fmt':
      rmi_f54.c:(.text.rmi_f54_vidioc_fmt+0x10): undefined reference to `video_devdata'
      drivers/input/rmi4/rmi_core.o: In function `rmi_f54_vidioc_enum_input':
      rmi_f54.c:(.text.rmi_f54_vidioc_enum_input+0x10): undefined reference to `video_devdata'
      drivers/input/rmi4/rmi_core.o: In function `rmi_f54_vidioc_querycap':
      ...
      
      The best workaround I could come up with is to disallow the debug
      mode unless it's actually possible to call it.
      
      Fixes: 3a762dbd ("[media] Input: synaptics-rmi4 - add support for F54 diagnostics")
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NNick Dyer <nick@shmanahar.org>
      Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      47d8e00c
    • A
      [media] Input: atmel_mxt: disallow impossible configuration · 7a4b9a29
      Arnd Bergmann 提交于
      The newnly added debug mode for the atmel_mxt_ts driver relies on
      the v4l2 interface and vb2_vmalloc, but those might be configured
      as loadable modules when the driver itself is built-in, resulting
      in a link failure:
      
      drivers/input/touchscreen/atmel_mxt_ts.o: In function `mxt_vidioc_querycap':
      atmel_mxt_ts.c:(.text.mxt_vidioc_querycap+0x10): undefined reference to `video_devdata'
      drivers/input/touchscreen/atmel_mxt_ts.o: In function `mxt_buffer_queue':
      atmel_mxt_ts.c:(.text.mxt_buffer_queue+0x20): undefined reference to `vb2_plane_vaddr'
      atmel_mxt_ts.c:(.text.mxt_buffer_queue+0x164): undefined reference to `vb2_buffer_done'
      drivers/input/touchscreen/atmel_mxt_ts.o: In function `mxt_free_object_table':
      atmel_mxt_ts.c:(.text.mxt_free_object_table+0x18): undefined reference to `video_unregister_device'
      atmel_mxt_ts.c:(.text.mxt_free_object_table+0x20): undefined reference to `v4l2_device_unregister'
      
      The best workaround I could come up with is to disallow the debug
      mode unless it's actually possible to call it.
      
      Fixes: ecfdd7e2 ("[media] Input: atmel_mxt_ts - output diagnostic debug via V4L2 device")
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NNick Dyer <nick@shmanahar.org>
      Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      7a4b9a29
  12. 11 9月, 2016 5 次提交
  13. 06 9月, 2016 2 次提交
  14. 31 8月, 2016 2 次提交
  15. 30 8月, 2016 2 次提交
  16. 26 8月, 2016 3 次提交