Commit Graph

5750 Commits

Author SHA1 Message Date
Zorro Liu
ab372c6336 driver: input: sensor: calibration data store in vendor storage
Change-Id: I338475309e716774c0b9ef81d9cbb425088b58a2
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-11-16 14:38:32 +08:00
Zorro Liu
2b5d85d7b2 driver: input: sensor: fix unbalanced enable for some sensor irq
[   31.190438] Unbalanced enable for IRQ 163
[   31.190481] ------------[ cut here ]------------
[   31.190495] WARNING: at kernel/irq/manage.c:513
[   31.190505] Modules linked in: bcmdhd
[   31.190525]
[   31.190544] CPU: 1 PID: 270 Comm: sensors@1.0-ser Not tainted 4.4.93 #175
[   31.190561] Hardware name: Rockchip rk3368 xkp board (DT)
[   31.190575] task: ffffffc076ac2700 task.stack: ffffffc076b28000
[   31.190601] PC is at __enable_irq+0x34/0x74
[   31.190614] LR is at __enable_irq+0x34/0x74
...
[   31.198173] [<ffffff80080f5d84>] __enable_irq+0x34/0x74
[   31.198188] [<ffffff80080f5e30>] enable_irq+0x6c/0x94
[   31.198207] [<ffffff800868e11c>] sensor_enable+0x78/0x13c
[   31.198222] [<ffffff800868e8a8>] light_dev_ioctl+0x1a4/0x1d4
[   31.198240] [<ffffff80081c71d4>] do_vfs_ioctl+0x5e4/0x720
[   31.198254] [<ffffff80081c7370>] SyS_ioctl+0x60/0x88
[   31.198270] [<ffffff8008082930>] el0_svc_naked+0x24/0x28

Change-Id: Ieba4a76910fde7381ea4b8113cca20fa068fabbd
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-11-16 09:43:05 +08:00
Zorro Liu
7f1ae55f96 driver: input: sensor: gyro: add new and to pass vts
1.add mpu6500 gyro driver
2.mpu6500 and mpu6880 to pass vts

Change-Id: I7a18578847e92c2cacd8d9b545455840b3a7b318
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-11-14 15:31:54 +08:00
Zorro Liu
49c623158c driver: input: sensor: update mpu6500 and mpu6880 accel driver
rate is not correct in interrupt mode, so just return and we
always use poll mode

Change-Id: I494600852907a8fff6599305195f5b4ccdb0bf7c
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-11-14 15:31:24 +08:00
Zorro Liu
42d5ef26c7 driver: sensor: add gyro sensor calibration function
Change-Id: Ic1e638631541f84d51c5e2c5bb3813e5a45a3fbe
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-11-14 15:31:13 +08:00
Zorro Liu
806fc43f29 driver: input: sensor: client is always null, we should not use it
[    3.427327] [<ffffff8008520c18>] dev_driver_string+0x0/0x34
[    3.432895] [<ffffff800852157c>] _dev_info+0x74/0x94
[    3.437860] [<ffffff8008690988>] sensor_register_slave+0x80/0x8c
[    3.443858] [<ffffff8009052874>] gsensor_mma8452_init+0x24/0x2c
[    3.449776] [<ffffff80080831f0>] do_one_initcall+0x178/0x194
[    3.455437] [<ffffff8009020ddc>] kernel_init_freeable+0x1a4/0x25c
[    3.461531] [<ffffff8008ae9940>] kernel_init+0x10/0xf8
[    3.466666] [<ffffff80080828d0>] ret_from_fork+0x10/0x40

Change-Id: I16e608e82c4da098b6d7b42fa7c3a2dc864724f6
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-11-13 10:29:47 +08:00
Zorro Liu
b9561487ed driver: input: sensor: add reprobe function
Change-Id: Ia4e405814851084825505e357fb95d95267fddaf
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-11-10 20:02:31 +08:00
Zorro Liu
a32d316fcc driver: sensors: improve sensor driver to pass android vts test
1) coding style
2) gsensor calibration by user
3) make sensor rate setting effective

Change-Id: I123674ad2fde72b0aa84e6135669ce1f44d5229d
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-11-10 20:02:11 +08:00
Zorro Liu
506a44f3cf driver: input: sensor: update lis3dh, mc3230, mpu6500, mpu6880 drivers
1.apply sensor rate
2.can pass android vts test

Change-Id: Ib4877fe3696e3724f8f9a2d21873438841e1b97f
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-11-10 20:00:20 +08:00
Huang jianzhi
7db7552596 Input: add gslx680 touch panel for firefly-rk3288 board
Change-Id: If273535f595217853009c3b0071010836f7c254e
Signed-off-by: Huang jianzhi <jesse.huang@rock-chips.com>
2017-11-03 09:38:37 +08:00
Tao Huang
6bedca442a Merge branch 'linux-linaro-lsk-v4.4-android' of git://git.linaro.org/kernel/linux-linaro-stable.git
* linux-linaro-lsk-v4.4-android: (546 commits)
  Linux 4.4.93
  x86/alternatives: Fix alt_max_short macro to really be a max()
  USB: serial: console: fix use-after-free after failed setup
  USB: serial: qcserial: add Dell DW5818, DW5819
  USB: serial: option: add support for TP-Link LTE module
  USB: serial: cp210x: add support for ELV TFD500
  USB: serial: ftdi_sio: add id for Cypress WICED dev board
  fix unbalanced page refcounting in bio_map_user_iov
  direct-io: Prevent NULL pointer access in submit_page_section
  usb: gadget: composite: Fix use-after-free in usb_composite_overwrite_options
  ALSA: line6: Fix leftover URB at error-path during probe
  ALSA: caiaq: Fix stray URB at probe error path
  ALSA: seq: Fix copy_from_user() call inside lock
  ALSA: seq: Fix use-after-free at creating a port
  ALSA: usb-audio: Kill stray URB at exiting
  iommu/amd: Finish TLB flush in amd_iommu_unmap()
  usb: renesas_usbhs: Fix DMAC sequence for receiving zero-length packet
  KVM: nVMX: fix guest CR4 loading when emulating L2 to L1 exit
  crypto: shash - Fix zero-length shash ahash digest crash
  HID: usbhid: fix out-of-bounds bug
  ...

Conflicts:
	drivers/cpufreq/cpufreq-dt.c
	drivers/usb/dwc3/gadget.c

Change-Id: I1a24ad0bba307b56b5ddf1fd7c4832ffb73ad12f
2017-11-02 17:00:07 +08:00
Langlang Wang
e76ca91969 input: sensor: add proximity sensor stk3410 driver and config
Change-Id: I55b30d0a0d650376174dd681728a6c7dad211fc5
Signed-off-by: Langlang Wang <langlang.wang@rock-chips.com>
2017-11-02 14:43:03 +08:00
Langlang Wang
d0bd557aa5 input: sensor: add light sensor stk3410 driver and config
Change-Id: I53edc203f50412f6197d442abfbf0df4117af86d
Signed-off-by: Langlang Wang <langlang.wang@rock-chips.com>
2017-11-02 14:42:46 +08:00
Langlang Wang
056973ba46 input: sensor: add accel sensor bma2xx driver and config
Change-Id: I5d551441cd29f03a6d3ccb38e6cb31c4e5c04b74
Signed-off-by: Langlang Wang <langlang.wang@rock-chips.com>
2017-11-02 14:42:30 +08:00
Langlang Wang
7746365205 input: sensor: add gsensor bma2xx and p/lsenspr stk3410 support
Change-Id: Id863d67574cfe9aa463090b3377e8945a5146f7a
Signed-off-by: Langlang Wang <langlang.wang@rock-chips.com>
2017-10-31 10:37:07 +08:00
Wu Liangqing
be95647823 driver: input: touch: rockchip_gslX680 remove log printk
Change-Id: Ied793a64b2ea1830df51a96a7b4a3ce7401a69f5
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2017-10-30 10:44:20 +08:00
Langlang Wang
a769f78068 input: sensor: mc3230: ensure the layout can be apply by the driver
Change-Id: I9481b4b15103a57571d448efb65e7bc539f85349
Signed-off-by: Langlang Wang <langlang.wang@rock-chips.com>
2017-10-27 10:57:00 +08:00
wlq
fd66488313 driver: input: touchscreen: add gslx680 for rk3126c d708
Change-Id: I59594bf83d2de744eb187fe0570366ddb56d8386
Signed-off-by: wlq <wlq@rock-chips.com>
2017-10-20 18:16:35 +08:00
Yankun Zheng
d98c0f32ae input: touchpad: cy8c: modify interrupt level to falling
Change-Id: I76ecd950df00ff53dd677316f71b5083c6102cba
Signed-off-by: Yankun Zheng <zyk@rock-chips.com>
2017-10-10 11:29:52 +08:00
Jason Song
a8facd8c95 input: touchscreen: gt9xx: compatible with gt9xxf.
Change-Id: Id428befa8db59870230865d1b5c11096c1ee5236
Signed-off-by: Jason Song <sxj@rock-chips.com>
2017-10-09 16:39:54 +08:00
Alex Shi
a759573d34 Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android 2017-10-04 12:03:25 +08:00
Kai-Heng Feng
bf592dde12 Input: i8042 - add Gigabyte P57 to the keyboard reset table
commit 697c5d8a36 upstream.

Similar to other Gigabyte laptops, the touchpad on P57 requires a
keyboard reset to detect Elantech touchpad correctly.

BugLink: https://bugs.launchpad.net/bugs/1594214
Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-09-27 11:00:13 +02:00
Zhou weixin
defe62616f sensor: mc32xx: update driver for support more sensors of mc32xx series
Change-Id: I9d8bff11f91364da3cdf573505c2d265550837da
Signed-off-by: Zhou weixin <zwx@rock-chips.com>
2017-09-19 10:43:12 +08:00
Alex Shi
8ffabf0207 Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android 2017-09-14 12:01:21 +08:00
Oscar Campos
c5b8e1dd96 Input: trackpoint - assume 3 buttons when buttons detection fails
commit 293b915fd9 upstream.

Trackpoint buttons detection fails on ThinkPad 570 and 470 series,
this makes the middle button of the trackpoint to not being recogized.
As I don't believe there is any trackpoint with less than 3 buttons this
patch just assumes three buttons when the extended button information
read fails.

Signed-off-by: Oscar Campos <oscar.campos@member.fsf.org>
Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Aaron Ma <aaron.ma@canonical.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-09-13 14:09:44 -07:00
Huang jianzhi
9ddbd9e7bb input: touchscreen: vtl_ts: fix compilation error
Change-Id: Ifdf10c3bb1a776389685388a0695fb1df90dcd70
Signed-off-by: Huang jianzhi <jesse.huang@rock-chips.com>
2017-09-13 09:34:58 +08:00
Huang jianzhi
ae33923b3d input: touchscreen: vtl_ts: tp firmware dts move to tp_fw.h
Change-Id: I6279d91f17ecca0c9dcc2355c22737746faee7d4
Signed-off-by: Huang jianzhi <jesse.huang@rock-chips.com>
2017-09-08 15:23:15 +08:00
Zhou weixin
0d5567697f touchscreen: gt9xx: add tp config-file config by dts
Change-Id: I0d8d1b16920906f26d911c03eaaba25e8480ebe2
Signed-off-by: Zhou weixin <zwx@rock-chips.com>
2017-09-05 18:04:36 +08:00
Tao Huang
dc6b994588 LSK 17.08 v4.4-android
-----BEGIN PGP SIGNATURE-----
 
 iQFHBAABCAAxFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAlmoFZkTHGJyb29uaWVA
 a2VybmVsLm9yZwAKCRAk1otyXVSH0GD+B/0Tfn9s8kkr42GSv444xzjNsOADb2qc
 SAMrtJr+kO2B4nC1SeJrwzkQjhS/GKNG1oj6eI+Qt4czbBskrsDR08evp2srhkFe
 2uFII9/avhaSLDLIbexT0iHP5ZSHsGOuUpZMuqlCTl1D2JxUOs7WSI/zIpZgTwJu
 0FB7BSB1mUqgT89VBb1zFeDaQ8NuArcbaOPMz7jH8SjeGz6Ez6cqqeRnnHNwwT7q
 zfbRGsLORiJncNCFHY7zvDA8FOJNIC9x27zzPpjMXdfV/hjyc03Y6ATkcqxeQS1W
 vdEfu247SFS1P2D0/5/L1LhOhFQzqdnRHif+N3PuUOu+/MfKnZemezX1
 =tOt4
 -----END PGP SIGNATURE-----

Merge tag 'lsk-v4.4-17.08-android' of git://git.linaro.org/kernel/linux-linaro-stable.git

LSK 17.08 v4.4-android

* tag 'lsk-v4.4-17.08-android': (451 commits)
  Linux 4.4.83
  pinctrl: samsung: Remove bogus irq_[un]mask from resource management
  pinctrl: sunxi: add a missing function of A10/A20 pinctrl driver
  pnfs/blocklayout: require 64-bit sector_t
  iio: adc: vf610_adc: Fix VALT selection value for REFSEL bits
  usb:xhci:Add quirk for Certain failing HP keyboard on reset after resume
  usb: quirks: Add no-lpm quirk for Moshi USB to Ethernet Adapter
  usb: core: unlink urbs from the tail of the endpoint's urb_list
  USB: Check for dropped connection before switching to full speed
  uag: Add US_FL_IGNORE_RESIDUE for Initio Corporation INIC-3069
  iio: light: tsl2563: use correct event code
  iio: accel: bmc150: Always restore device to normal mode after suspend-resume
  staging:iio:resolver:ad2s1210 fix negative IIO_ANGL_VEL read
  USB: hcd: Mark secondary HCD as dead if the primary one died
  usb: musb: fix tx fifo flush handling again
  USB: serial: pl2303: add new ATEN device id
  USB: serial: cp210x: add support for Qivicon USB ZigBee dongle
  USB: serial: option: add D-Link DWM-222 device ID
  nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays
  fuse: initialize the flock flag in fuse_file on allocation
  ...
2017-09-01 18:56:00 +08:00
Amit Pundir
330dcbb078 Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>

Conflicts:
    drivers/android/binder.c
        Keep AOSP changes and discard LTS binder changes, since these LTS changes
        have already been merged and further refactored in AOSP tree long ago.
2017-09-01 13:59:45 +05:30
KT Liao
07051c1754 Input: elan_i2c - add ELAN0602 ACPI ID to support Lenovo Yoga310
commit 1d2226e450 upstream.

Add ELAN0602 to the list of known ACPI IDs to enable support for ELAN
touchpads found in Lenovo Yoga310.

Signed-off-by: KT Liao <kt.liao@emc.com.tw>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-08-30 10:19:22 +02:00
Aaron Ma
5609ae96bc Input: trackpoint - add new trackpoint firmware ID
commit ec667683c5 upstream.

Synaptics add new TP firmware ID: 0x2 and 0x3, for now both lower 2 bits
are indicated as TP. Change the constant to bitwise values.

This makes trackpoint to be recognized on Lenovo Carbon X1 Gen5 instead
of it being identified as "PS/2 Generic Mouse".

Signed-off-by: Aaron Ma <aaron.ma@canonical.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-08-30 10:19:22 +02:00
KT Liao
ae4743cac8 Input: elan_i2c - Add antoher Lenovo ACPI ID for upcoming Lenovo NB
commit 7698869040 upstream.

Add 2 new IDs (ELAN0609 and ELAN060B) to the list of ACPI IDs that should
be handled by the driver.

Signed-off-by: KT Liao <kt.liao@emc.com.tw>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-08-24 17:02:35 -07:00
Kai-Heng Feng
0dbf7f7811 Input: elan_i2c - add ELAN0608 to the ACPI table
commit 1874064eed upstream.

Similar to commit 722c5ac708 ("Input: elan_i2c - add ELAN0605 to the
ACPI table"), ELAN0608 should be handled by elan_i2c.

This touchpad can be found in Lenovo ideapad 320-14IKB.

BugLink: https://bugs.launchpad.net/bugs/1708852

Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-08-24 17:02:35 -07:00
Zhangbin Tong
962eb69630 input: rc: support parser power key through the underlying firmware
Change-Id: If9ba76081eca80d2d210dd42307e727e673b8b8a
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2017-08-17 18:24:53 +08:00
Mohan Srinivasan
b6a1c9bb7e ANDROID: keychord: Fix for a memory leak in keychord.
Fixes a steady memory leak in the keychord release code. A close of
the keychord device will leak 1 keychord structure. Easily
reproducible by a simple program that does an open()->write()->close()
of the keychord device.

Bug: 64483974
Change-Id: I1fa402c666cffb00b8cfd6379d9fe47a0989152c
Signed-off-by: Mohan Srinivasan <srmohan@google.com>
(cherry picked from commit 72a8dae2c25d0277e48672ee85b70236268add01)
2017-08-16 20:25:32 +05:30
Mohan Srinivasan
082faa1c2f ANDROID: keychord: Fix races in keychord_write.
There are multiple bugs caused by threads racing in keychord_write.
1) Threads racing through this function can cause the same element to
be added to a linked list twice (multiple calls to
input_register_handler() for the same input_handler struct). And the
races can also cause an element in a linked list that doesn't exist
attempted to be removed (multiple calls to input_unregister_handler()
with the same input_handler struct).
2) The races can also cause duplicate kfree's of the keychords
struct.

Bug: 64133562
Bug: 63974334
Change-Id: I6329a4d58c665fab5d3e96ef96391e07b4941e80
Signed-off-by: Mohan Srinivasan <srmohan@google.com>
(cherry picked from commit 59584701f1e2ce8ce024570576b206bea6ac69cf)
2017-08-16 20:25:19 +05:30
Mohan Srinivasan
cb80f0193e Use %zu to print resid (size_t).
Print resid (size_t) portably.

Signed-off-by: Mohan Srinivasan <srmohan@google.com>
Change-Id: Ic5c9dc498bfeef2be21594ec5efd45a98a3c4b4d
(cherry picked from commit a1e4c795e1b6de6b34b8cbc75499d1675608c36b)
2017-08-16 20:25:06 +05:30
Mohan Srinivasan
10e3096150 ANDROID: keychord: Fix a slab out-of-bounds read.
Fix a slab out of bounds read in keychord_write(), detected by KASAN.

Signed-off-by: Mohan Srinivasan <srmohan@google.com>
Bug: 63962952
Change-Id: Iafef48b5d7283750ac0f39f5aaa767b1c3bf2004
(cherry picked from commit 913d980e07d84a843f5323acc55d185212a2abec)
2017-08-16 20:24:53 +05:30
Alex Shi
3a183de93c Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android 2017-07-28 12:01:36 +08:00
Chen Hong
bba6b69e11 Input: i8042 - fix crash at boot time
commit 340d394a78 upstream.

The driver checks port->exists twice in i8042_interrupt(), first when
trying to assign temporary "serio" variable, and second time when deciding
whether it should call serio_interrupt(). The value of port->exists may
change between the 2 checks, and we may end up calling serio_interrupt()
with a NULL pointer:

BUG: unable to handle kernel NULL pointer dereference at 0000000000000050
IP: [<ffffffff8150feaf>] _spin_lock_irqsave+0x1f/0x40
PGD 0
Oops: 0002 [#1] SMP
last sysfs file:
CPU 0
Modules linked in:

Pid: 1, comm: swapper Not tainted 2.6.32-358.el6.x86_64 #1 QEMU Standard PC (i440FX + PIIX, 1996)
RIP: 0010:[<ffffffff8150feaf>]  [<ffffffff8150feaf>] _spin_lock_irqsave+0x1f/0x40
RSP: 0018:ffff880028203cc0  EFLAGS: 00010082
RAX: 0000000000010000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000282 RSI: 0000000000000098 RDI: 0000000000000050
RBP: ffff880028203cc0 R08: ffff88013e79c000 R09: ffff880028203ee0
R10: 0000000000000298 R11: 0000000000000282 R12: 0000000000000050
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000098
FS:  0000000000000000(0000) GS:ffff880028200000(0000) knlGS:0000000000000000
CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
CR2: 0000000000000050 CR3: 0000000001a85000 CR4: 00000000001407f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Process swapper (pid: 1, threadinfo ffff88013e79c000, task ffff88013e79b500)
Stack:
ffff880028203d00 ffffffff813de186 ffffffffffffff02 0000000000000000
<d> 0000000000000000 0000000000000000 0000000000000000 0000000000000098
<d> ffff880028203d70 ffffffff813e0162 ffff880028203d20 ffffffff8103b8ac
Call Trace:
<IRQ>
 [<ffffffff813de186>] serio_interrupt+0x36/0xa0
[<ffffffff813e0162>] i8042_interrupt+0x132/0x3a0
[<ffffffff8103b8ac>] ? kvm_clock_read+0x1c/0x20
[<ffffffff8103b8b9>] ? kvm_clock_get_cycles+0x9/0x10
[<ffffffff810e1640>] handle_IRQ_event+0x60/0x170
[<ffffffff8103b154>] ? kvm_guest_apic_eoi_write+0x44/0x50
[<ffffffff810e3d8e>] handle_edge_irq+0xde/0x180
[<ffffffff8100de89>] handle_irq+0x49/0xa0
[<ffffffff81516c8c>] do_IRQ+0x6c/0xf0
[<ffffffff8100b9d3>] ret_from_intr+0x0/0x11
[<ffffffff81076f63>] ? __do_softirq+0x73/0x1e0
[<ffffffff8109b75b>] ? hrtimer_interrupt+0x14b/0x260
[<ffffffff8100c1cc>] ? call_softirq+0x1c/0x30
[<ffffffff8100de05>] ? do_softirq+0x65/0xa0
[<ffffffff81076d95>] ? irq_exit+0x85/0x90
[<ffffffff81516d80>] ? smp_apic_timer_interrupt+0x70/0x9b
[<ffffffff8100bb93>] ? apic_timer_interrupt+0x13/0x20

To avoid the issue let's change the second check to test whether serio is
NULL or not.

Also, let's take i8042_lock in i8042_start() and i8042_stop() instead of
trying to be overly smart and using memory barriers.

Signed-off-by: Chen Hong <chenhong3@huawei.com>
[dtor: take lock in i8042_start()/i8042_stop()]
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:08 -07:00
Wenping Zhang
2a573afcd2 input: touchscreen: add cy8c40xx touchpad support.
Change-Id: I765177ee00472e19b8bc6fcbdb79db4ea914f3a9
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
2017-07-27 11:41:23 +08:00
Huang, Tao
6ee6d6d68b LSK 17.07 v4.4-android
-----BEGIN PGP SIGNATURE-----
 
 iQFHBAABCAAxFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAllwdJoTHGJyb29uaWVA
 a2VybmVsLm9yZwAKCRAk1otyXVSH0AkKB/0ZQ0WDrfYw1qbMxq6LswCYC7frwSrF
 9KQYZ07bHwR2qZKHOGW50+gOSAW4WOV8VBoAA2mznG9hM4tuONP4OXY2cxwS2B/H
 48PoxV+6DYgIIz5ojOcb17e348T/YE0GgaHe08LWIePSZb60SZK2TFW5yzUS8rAV
 7uS+OeyZ69C0n6NO8hqdBflXvaWhaL/cFw6s/S7oOcHJ7/gLSmzRkLDuVZJNiU2u
 KSujgGAO/Bj2L8TlPfbwTR3Dq1M3uAEs6TNwVgJE2bqOI/u/OJFFkLWI+DGZ5qyu
 yHVg3dpMEc6mjR7eYlrkhIzdMsLNX+uEK5TIPH+oLXMflboDxFdWScJw
 =a1gE
 -----END PGP SIGNATURE-----

Merge tag 'lsk-v4.4-17.07-android' of git://git.linaro.org/kernel/linux-linaro-stable.git

LSK 17.07 v4.4-android

* tag 'lsk-v4.4-17.07-android': (402 commits)
  dt/vendor-prefixes: remove redundant vendor
  Linux 4.4.77
  saa7134: fix warm Medion 7134 EEPROM read
  x86/mm/pat: Don't report PAT on CPUs that don't support it
  ext4: check return value of kstrtoull correctly in reserved_clusters_store
  staging: comedi: fix clean-up of comedi_class in comedi_init()
  staging: vt6556: vnt_start Fix missing call to vnt_key_init_table.
  tcp: fix tcp_mark_head_lost to check skb len before fragmenting
  md: fix super_offset endianness in super_1_rdev_size_change
  md: fix incorrect use of lexx_to_cpu in does_sb_need_changing
  perf tools: Use readdir() instead of deprecated readdir_r() again
  perf tests: Remove wrong semicolon in while loop in CQM test
  perf trace: Do not process PERF_RECORD_LOST twice
  perf dwarf: Guard !x86_64 definitions under #ifdef else clause
  perf pmu: Fix misleadingly indented assignment (whitespace)
  perf annotate browser: Fix behaviour of Shift-Tab with nothing focussed
  perf tools: Remove duplicate const qualifier
  perf script: Use readdir() instead of deprecated readdir_r()
  perf thread_map: Use readdir() instead of deprecated readdir_r()
  perf tools: Use readdir() instead of deprecated readdir_r()
  ...

Conflicts:
	Makefile
	drivers/Kconfig
	drivers/Makefile
	drivers/usb/dwc3/gadget.c

Change-Id: Ib4aae2e34ebbf0d7953c748a33f673acb3e744fc
2017-07-26 19:32:04 +08:00
Alex Shi
2120557722 Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android
Conflicts:
	arch/arm64/kernel/armv8_deprecated.c
	arch/arm64/kernel/efi.c
	arch/arm64/kernel/entry.S
	arch/arm64/kernel/head.S
	arch/arm64/kernel/hw_breakpoint.c
	arch/arm64/mm/mmu.c
	include/linux/memblock.h
	mm/memblock.c
2017-07-11 16:22:22 +08:00
Daniel Drake
255ad85b5e Input: i8042 - add Fujitsu Lifebook AH544 to notimeout list
commit 817ae460c7 upstream.

Without this quirk, the touchpad is not responsive on this product, with
the following message repeated in the logs:

 psmouse serio1: bad data from KBC - timeout

Add it to the notimeout list alongside other similar Fujitsu laptops.

Signed-off-by: Daniel Drake <drake@endlessm.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-29 12:48:51 +02:00
buluess.li
cb76f82440 input: touchscreen: gsl3673: to solve the boot and resume slowly
when boot and resume,the fw should load/reload,this will take up
much time in the main thread,so here add a thread to load/reload
fw in order to void this situation.

Change-Id: Ic1a67fd662b0406ede08b0aeb944525fabc519e6
Signed-off-by: buluess.li <buluess.li@rock-chips.com>
2017-06-27 18:23:34 +08:00
Ulrik De Bie
fff08d2452 Input: elantech - add Fujitsu Lifebook E546/E557 to force crc_enabled
commit 47eb0c8b4d upstream.

The Lifebook E546 and E557 touchpad were also not functioning and
worked after running:

        echo "1" > /sys/devices/platform/i8042/serio2/crc_enabled

Add them to the list of machines that need this workaround.

Signed-off-by: Ulrik De Bie <ulrik.debie-os@e2big.org>
Reviewed-by: Arjan Opmeer <arjan@opmeer.net>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-14 13:16:23 +02:00
Zorro Liu
c9ead04887 driver: sensor: ak09911: to match hal code, compatible with ak8963
Change-Id: Ia5768a4466512063948c48c2139356522a4557ac
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-06-12 18:56:03 +08:00
Zorro Liu
a649538ca9 driver: sensor-dev: use copy_to_user&&copy_from_user to do the user point
Change-Id: Ibbff2eecc71643c95ae91d0cd8a8469fd43a3cea
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2017-05-22 12:00:32 +08:00
Huang, Tao
986d4e4637 Merge branch 'linux-linaro-lsk-v4.4-android' of git://git.linaro.org/kernel/linux-linaro-stable.git
* linux-linaro-lsk-v4.4-android: (521 commits)
  Linux 4.4.66
  ftrace/x86: Fix triple fault with graph tracing and suspend-to-ram
  ARCv2: save r30 on kernel entry as gcc uses it for code-gen
  nfsd: check for oversized NFSv2/v3 arguments
  Input: i8042 - add Clevo P650RS to the i8042 reset list
  p9_client_readdir() fix
  MIPS: Avoid BUG warning in arch_check_elf
  MIPS: KGDB: Use kernel context for sleeping threads
  ALSA: seq: Don't break snd_use_lock_sync() loop by timeout
  ALSA: firewire-lib: fix inappropriate assignment between signed/unsigned type
  ipv6: check raw payload size correctly in ioctl
  ipv6: check skb->protocol before lookup for nexthop
  macvlan: Fix device ref leak when purging bc_queue
  ip6mr: fix notification device destruction
  netpoll: Check for skb->queue_mapping
  net: ipv6: RTF_PCPU should not be settable from userspace
  dp83640: don't recieve time stamps twice
  tcp: clear saved_syn in tcp_disconnect()
  sctp: listen on the sock only when it's state is listening or closed
  net: ipv4: fix multipath RTM_GETROUTE behavior when iif is given
  ...

Conflicts:
	drivers/usb/dwc3/gadget.c
	include/linux/usb/quirks.h

Change-Id: I490f766b9a530b10da3107e20709538e4536a99d
2017-05-06 14:23:00 +08:00