linux/drivers/input/touchscreen
Linus Torvalds b12dd0fa48 Input updates for v7.3-rc3
- Fixes for evdev and input compat handling to zero-initialize on-stack
   absinfo and force-feedback effect structures before partial or compat
   copies from userspace, preventing kernel stack memory disclosure
 
 - Fixes for the Synaptics RMI4 driver to prevent an out-of-bounds read
   when writing multi-chunk blocks over SMBus and to avoid a NULL pointer
   dereference during suspend/resume when the RMI device is unbound
 
 - Fixes for the soc_button_array driver to propagate -EPROBE_DEFER on
   non-Bay Trail/Cherry Trail platforms (fixing broken power and volume
   buttons on the Microsoft Surface Pro 11) and to validate the ACPI
   package element count before dereferencing
 
 - A fix for the adp5588-keys driver to cache the initial GPIO hardware
   state before registering the gpiochip so pre-configured pin states are
   not clobbered by GPIO hogs during registration
 
 - A fix for the cyttsp5 touchscreen driver to clamp the device-supplied
   HID report size before copying into the response buffer, preventing a
   buffer overflow
 
 - A fix for the HP SDC serio driver to use timer_shutdown_sync() on
   module exit so the periodic kicker timer cannot rearm itself during
   teardown
 
 - A fix for the eeti_ts touchscreen driver to export its OF module alias
   so the module autoloads on Device Tree platforms
 
 - Updates to the xpad joystick driver adding support for the Victrix Pro
   BFG controller and Azeron devices, and fixing the device type
   classification for the PDP Marvel Xbox 360 controller
 
 - Quirks for the i8042 and atkbd drivers to keep the built-in keyboards
   functional on the Acer Aspire Go 15 AG15-42P and Xiaomi Redmi Book Pro
   16 2026
 
 - A quirk for the Synaptics PS/2 touchpad driver disabling SMBus
   InterTouch on the Lenovo ThinkPad T440p (board ID 2722) so the
   touchpad and TrackPoint respond immediately at boot
 
 - Other minor updates and documentation fixes, including reading the
   "ti,poll-period" property as u32 in tsc2007, adding the mt6572
   compatible to the MediaTek keypad Device Tree binding, fixing an
   attribute name typo in the trackpoint sysfs ABI documentation, and
   documenting that no new LED codes should be added to the input
   subsystem.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQST2eWILY88ieB2DOtAj56VGEWXnAUCaq9j+gAKCRBAj56VGEWX
 nJ5KAQDnTOivIghgIGnlKTIYLSV4cJ0fWJh7J1/ubx9soK+9RwD/bDUdyryAaSTr
 x95U7/fEvq/lXBFyK2LXyahuTC6vNQY=
 =Vsfi
 -----END PGP SIGNATURE-----

Merge tag 'input-for-v7.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input

Pull input fixes from Dmitry Torokhov:

 - Fixes for evdev and input compat handling to zero-initialize on-stack
   absinfo and force-feedback effect structures before partial or compat
   copies from userspace, preventing kernel stack memory disclosure

 - Fixes for the Synaptics RMI4 driver to prevent an out-of-bounds read
   when writing multi-chunk blocks over SMBus and to avoid a NULL
   pointer dereference during suspend/resume when the RMI device is
   unbound

 - Fixes for the soc_button_array driver to propagate -EPROBE_DEFER on
   non-Bay Trail/Cherry Trail platforms (fixing broken power and volume
   buttons on the Microsoft Surface Pro 11) and to validate the ACPI
   package element count before dereferencing

 - A fix for the adp5588-keys driver to cache the initial GPIO hardware
   state before registering the gpiochip so pre-configured pin states
   are not clobbered by GPIO hogs during registration

 - A fix for the cyttsp5 touchscreen driver to clamp the device-supplied
   HID report size before copying into the response buffer, preventing a
   buffer overflow

 - A fix for the HP SDC serio driver to use timer_shutdown_sync() on
   module exit so the periodic kicker timer cannot rearm itself during
   teardown

 - A fix for the eeti_ts touchscreen driver to export its OF module
   alias so the module autoloads on Device Tree platforms

 - Updates to the xpad joystick driver adding support for the Victrix
   Pro BFG controller and Azeron devices, and fixing the device type
   classification for the PDP Marvel Xbox 360 controller

 - Quirks for the i8042 and atkbd drivers to keep the built-in keyboards
   functional on the Acer Aspire Go 15 AG15-42P and Xiaomi Redmi Book
   Pro 16 2026

 - A quirk for the Synaptics PS/2 touchpad driver disabling SMBus
   InterTouch on the Lenovo ThinkPad T440p (board ID 2722) so the
   touchpad and TrackPoint respond immediately at boot

 - Other minor updates and documentation fixes, including reading the
   "ti,poll-period" property as u32 in tsc2007, adding the mt6572
   compatible to the MediaTek keypad Device Tree binding, fixing an
   attribute name typo in the trackpoint sysfs ABI documentation, and
   documenting that no new LED codes should be added to the input
   subsystem

* tag 'input-for-v7.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: hp_sdc - shut down kicker timer on module exit
  Input: xpad - add support for Victrix Pro BFG Controller
  Input: tsc2007 - read "ti,poll-period" as u32
  Input: trackpoint - fix the inertia attribute name in the ABI document
  Input: eeti_ts - publish the OF module alias
  Input: xpad - add support for Azeron devices
  Input: xpad - fix PDP Marvel Xbox 360 controller
  Input: document that no new LED codes should be added
  Input: soc_button_array - check btns_desc->package.count
  Input: soc_button_array - fix MS Surface Pro 11 probe failure
  Input: i8042 - add quirk for Acer Aspire Go 15 AG15-42P
  Input: synaptics - disable InterTouch on ThinkPad T440p (board id 2722)
  Input: cyttsp5 - clamp the HID report size before memcpy
  Input: zero ff_effect before compat copy in input_ff_effect_from_user
  Input: evdev - zero absinfo before partial copy in EVIOCSABS
  Input: synaptics-rmi4 - fix GPF in suspend and resume when unbound
  Input: rmi_smbus - fix out-of-bounds read in rmi_smb_write_block()
  Input: atkbd - skip deactivate for Xiaomi Redmi Book Pro 16 2026
  dt-bindings: input: mediatek,mt6779-keypad: add mt6572
  Input: adp5588-keys - cache GPIO state before registering the gpiochip
2026-09-20 07:02:34 -07:00
..
88pm860x-ts.c Input: 88pm860x - use cleanup facility for device_node 2024-10-19 21:21:41 -07:00
ad7877.c Input: ad7877 - use guard notation when acquiring mutexes/locks 2026-03-24 21:14:18 -07:00
ad7879-i2c.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
ad7879-spi.c Input: ad7879 - use device core to create driver-specific device attributes 2023-09-06 14:23:47 -07:00
ad7879.c Input: ad7879 - use guard notation when acquiring mutexes 2026-03-24 21:14:19 -07:00
ad7879.h Input: ad7879 - use device core to create driver-specific device attributes 2023-09-06 14:23:47 -07:00
ads7846.c Input: ads7846 - don't use scratch for tx_buf when clearing register 2026-06-10 15:47:47 -07:00
apple_z2.c Input: apple_z2 - fix reading incorrect reports after exiting sleep 2025-12-18 12:17:10 -08:00
ar1021_i2c.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
atmel_mxt_ts.c Linux 7.1-rc6 2026-05-31 19:43:25 -07:00
auo-pixcir-ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
bcm_iproc_tsc.c input: Fix typos in comments across various files 2024-09-30 07:58:33 -07:00
bu21013_ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
bu21029_ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
chipone_icn8318.c Input: chipone_icn8318 - use guard notation when acquiring mutex 2026-03-24 21:14:22 -07:00
chipone_icn8505.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
colibri-vf50-ts.c iio: inkern: Use namespaced exports 2026-07-05 01:37:19 +01:00
cy8ctma140.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
cy8ctmg110_ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
cyttsp_core.c Input: cyttsp - use guard notation when acquiring mutex 2026-03-24 21:14:23 -07:00
cyttsp_core.h Input: cyttsp4 - remove driver 2024-08-05 10:48:49 -07:00
cyttsp_i2c.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
cyttsp_spi.c Input: cyttsp - use EXPORT_GPL_SIMPLE_DEV_PM_OPS() 2023-01-27 14:49:53 -08:00
cyttsp5.c Input: cyttsp5 - clamp the HID report size before memcpy 2026-09-01 07:40:51 -07:00
da9034-ts.c
da9052_tsi.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
dynapro.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
edt-ft5x06.c Input: edt-ft5x06 - ignore contacts with an out-of-range slot id 2026-07-23 10:41:54 -07:00
eeti_ts.c Input: eeti_ts - publish the OF module alias 2026-09-13 18:13:05 -07:00
egalax_ts_serial.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
egalax_ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
ektf2127.c Input: ektf2127 - use guard notation when acquiring mutex 2026-03-24 21:14:24 -07:00
elants_i2c.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
elo.c Input: elo - fix coding style issues in elo_setup_10() 2026-07-25 18:13:53 -07:00
exc3000.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
fsl-imx25-tcq.c Input: remove unneeded 'fast_io' parameter in regmap_config 2025-08-21 12:00:59 -07:00
fujitsu_ts.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
goodix_berlin_core.c Input: goodix-berlin - report a resolution of 10 units/mm 2026-03-25 09:08:17 -07:00
goodix_berlin_i2c.c Input: goodix_berlin - add support for Berlin-A series 2025-03-10 10:46:08 -07:00
goodix_berlin_spi.c Input: goodix_berlin - add support for Berlin-A series 2025-03-10 10:46:08 -07:00
goodix_berlin.h Input: goodix_berlin - add support for Berlin-A series 2025-03-10 10:46:08 -07:00
goodix_fwupload.c Input: goodix - switch to using cleanup functions in firmware code 2026-03-24 21:14:27 -07:00
goodix.c Input: goodix - clamp the device-reported contact count 2026-06-22 20:44:12 -07:00
goodix.h Input: goodix - remove setting of RST pin to input 2025-10-13 09:35:26 -07:00
gunze.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
hampshire.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
hideep.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
himax_hx852x.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
himax_hx83112b.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
hp680_ts_input.c
htcpen.c
hycon-hy46xx.c Input: hycon-hy46xx - use guard notation when acquiring mutex 2026-03-24 21:14:49 -07:00
hynitron_cstxxx.c Merge branch 'next' into for-linus 2026-08-14 21:26:07 -07:00
hynitron-cst816x.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
ili210x.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
ilitek_ts_i2c.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
imagis.c Input: imagis - use guard notation when acquiring mutex 2026-03-24 21:14:50 -07:00
imx6ul_tsc.c Input: imx6ul_tsc - use guard notation when acquiring mutex 2026-03-24 21:14:50 -07:00
inexio.c Input: inexio - replace printk with dev_dbg and fix missing space 2026-07-25 18:16:12 -07:00
ipaq-micro-ts.c Input: ipaq-micro-ts - use guard notation when acquiring mutex/spinlock 2026-03-24 21:14:51 -07:00
iqs5xx.c Input: iqs5xx - validate firmware record destination span 2026-07-24 18:18:47 -07:00
iqs7211.c Input: iqs7211 - use cleanup facility for fwnodes 2026-03-24 21:14:53 -07:00
jornada720_ts.c
Kconfig Input: Add support for Wacom W9000-series penabled touchscreens 2026-05-29 22:31:40 -07:00
lpc32xx_ts.c Input: lpc32xx_ts - use guard notation when acquiring mutex 2026-03-24 21:14:53 -07:00
mainstone-wm97xx.c Input: switch back to struct platform_driver::remove() 2024-10-15 11:43:25 -07:00
Makefile Input: Add support for Wacom W9000-series penabled touchscreens 2026-05-29 22:31:40 -07:00
max11801_ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
mc13783_ts.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
melfas_mip4.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
migor_ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
mms114.c Input: mms114 - fix Y-resolution configuration 2026-07-13 19:30:02 -07:00
msg2638.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
mtouch.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
mxs-lradc-ts.c Input: mxs-lradc-ts - use guard notation when acquiring spinlock 2026-03-25 07:53:57 -07:00
novatek-nvt-ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
penmount.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
pixcir_i2c_ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
raspberrypi-ts.c Input: raspberrypi-ts - use cleanup facility for device_node 2024-10-19 21:21:43 -07:00
raydium_i2c_ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
resistive-adc-touch.c Linux 7.2-rc2 2026-07-06 16:59:47 +01:00
rohm_bu21023.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
s6sy761.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
silead.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
sis_i2c.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
st1232.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
stmfts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
stmpe-ts.c Input: stmpe-ts - use module alias instead of device table 2025-04-28 12:14:12 -07:00
sun4i-ts.c Input: switch back to struct platform_driver::remove() 2024-10-15 11:43:25 -07:00
sur40.c Merge branch 'next' into for-linus 2026-08-14 21:26:07 -07:00
surface3_spi.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
sx8654.c Input: sx8654 - use IRQF_NOAUTOEN when requesting interrupt 2026-03-25 07:53:59 -07:00
ti_am335x_tsc.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
touchit213.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
touchright.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
touchwin.c Input: touchwin - reset the packet index on every complete packet 2026-06-14 13:58:16 -07:00
tps6507x-ts.c Input: tps6507x-ts - remove variable loops 2022-10-24 05:18:55 -07:00
ts4800-ts.c Input: ts4800-ts - use cleanup facility for device_node 2024-10-19 21:21:43 -07:00
tsc40.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
tsc200x-core.c Input: include export.h in modules using EXPORT_SYMBOL*() 2025-08-21 12:00:59 -07:00
tsc200x-core.h Input: tsc2004/5 - fix handling of VIO power supply 2024-08-04 18:10:40 -07:00
tsc2004.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
tsc2005.c Input: tsc2004/5 - fix handling of VIO power supply 2024-08-04 18:10:40 -07:00
tsc2007_core.c Input: tsc2007 - read "ti,poll-period" as u32 2026-09-13 18:17:31 -07:00
tsc2007_iio.c Input: tsc2007 - use guard notation when acquiring mutexes 2026-03-25 07:53:59 -07:00
tsc2007.h Input: tsc2007 - accept standard properties 2024-12-10 16:17:30 -08:00
usbtouchscreen.c Input: usbtouchscreen - clamp NEXIO data_len/x_len to URB buffer size 2026-04-26 21:00:25 -07:00
wacom_i2c.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
wacom_w8001.c Input: wacom_w8001 - replace strlcat() with a strscpy() helper 2026-07-15 14:37:31 -07:00
wacom_w9000.c Input: Add support for Wacom W9000-series penabled touchscreens 2026-05-29 22:31:40 -07:00
wdt87xx_i2c.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
wm97xx-core.c Input: wm97xx - use guard notation when acquiring mutex 2026-03-25 07:54:00 -07:00
wm831x-ts.c Input: switch back to struct platform_driver::remove() 2024-10-15 11:43:25 -07:00
wm9705.c Input: include export.h in modules using EXPORT_SYMBOL*() 2025-08-21 12:00:59 -07:00
wm9712.c Input: include export.h in modules using EXPORT_SYMBOL*() 2025-08-21 12:00:59 -07:00
wm9713.c Input: include export.h in modules using EXPORT_SYMBOL*() 2025-08-21 12:00:59 -07:00
zet6223.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
zforce_ts.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
zinitix.c Input: zinitix - use guard notation when acquiring mutex 2026-03-25 07:54:00 -07:00