linux/drivers/input/keyboard
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
..
adc-keys.c iio: inkern: Use namespaced exports 2026-07-05 01:37:19 +01:00
adp5520-keys.c Input: switch back to struct platform_driver::remove() 2024-10-15 11:43:25 -07:00
adp5585-keys.c treewide: refresh kmalloc_obj() conversions 2026-09-04 21:37:00 -07:00
adp5588-keys.c Input: adp5588-keys - cache GPIO state before registering the gpiochip 2026-08-26 05:23:44 -07:00
amikbd.c vt: remove superfluous CONFIG_HW_CONSOLE 2024-01-27 19:03:51 -08:00
applespi_trace.h Input: add Apple SPI keyboard and trackpad driver 2019-07-19 11:58:34 +03:00
applespi.c Input updates for v6.13-rc0 2024-11-25 10:31:39 -08:00
applespi.h Input: add Apple SPI keyboard and trackpad driver 2019-07-19 11:58:34 +03:00
atakbd.c input: drop empty comment blocks 2022-09-29 16:25:42 -07:00
atkbd.c Input updates for v7.3-rc3 2026-09-20 07:02:34 -07:00
bcm-keypad.c Input: bcm-keypad - remove redundant of_match_ptr() 2024-01-20 00:54:22 -08:00
cap11xx.c Input: cap11xx - add support for CAP1114 2026-06-22 23:19:41 -07:00
charlieplex_keypad.c Input: charlieplex_keypad - check gpiod_direction_output() return value 2026-07-24 18:18:47 -07:00
clps711x-keypad.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
cros_ec_keyb.c Input: cros_ec_keyb - factor out column processing 2026-02-23 13:47:52 -08:00
cypress-sf.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
dlink-dir685-touchkeys.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
ep93xx_keypad.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
goldfish_events.c Input: goldfish_events - replace zero-length array with flexible-array member 2020-02-13 17:09:47 -08:00
gpio_keys_polled.c Input: gpio-keys: make legacy gpiolib optional 2026-07-24 20:12:40 +02:00
gpio_keys.c Input: gpio-keys: make legacy gpiolib optional 2026-07-24 20:12:40 +02:00
hil_kbd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
hilkbd.c Input: hilkbd - use guard notation when acquiring spinlock 2024-11-05 14:17:20 -08:00
imx_keypad.c Input: imx_keypad - fix spelling mistake "Colums" -> "Columns" 2026-04-19 17:55:20 -07:00
imx_sc_key.c Input: imx_sc_key - fix memory corruption on unload 2025-11-04 10:57:36 -08:00
imx-sm-bbm-key.c input: keyboard: support i.MX95 BBM module 2024-08-28 21:54:38 +01:00
ipaq-micro-keys.c Input: ipaq-micro-keys - add length check in micro_key_receive 2026-06-11 13:52:18 -07:00
iqs62x-keys.c Input: switch back to struct platform_driver::remove() 2024-10-15 11:43:25 -07:00
jornada680_kbd.c Input: jornada680_kbd - switch to using polled mode of input devices 2019-10-29 17:13:44 -07:00
jornada720_kbd.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
Kconfig Input: gscps2 - supply PA-RISC keyboard keymap via device property 2026-08-05 22:45:01 -07:00
lkkbd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
lm8323.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
lm8333.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
locomokbd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
lpc32xx-keys.c Input: lpc32xx-keys - use guard notation when acquiring mutex 2024-10-03 08:53:31 -07:00
Makefile Input: charlieplex_keypad - add GPIO charlieplex keypad 2026-04-19 18:27:01 -07:00
maple_keyb.c Input: maple_keyb - set driver data before registering input device 2026-07-02 22:50:19 -07:00
matrix_keypad.c Input: matrix_keyboard - replace linux/gpio.h inclusion 2026-07-24 20:12:48 +02:00
max7359_keypad.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
max7360-keypad.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
mpr121_touchkey.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
mt6779-keypad.c Input: mt6779-keypad - use devm_clk_get_enabled() 2024-08-28 11:10:05 -07:00
mtk-pmic-keys.c Input: mtk-pmic-keys - MT6359 has a specific release irq 2025-09-06 09:24:14 -07:00
newtonkbd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
nspire-keypad.c Input: nspire-keypad - use devm_platform_get_and_ioremap_resource() 2023-07-10 17:44:26 -07:00
omap-keypad.c Convert 'alloc_flex' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
omap4-keypad.c Input: omap4-keypad - remove redundant pm_runtime_mark_last_busy() calls 2025-12-13 01:23:01 -08:00
opencores-kbd.c Input: opencores-kbd - convert to devm_platform_ioremap_resource() 2023-07-10 17:44:27 -07:00
pinephone-keyboard.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
pmic8xxx-keypad.c Input: pmic8xxx-keypad - remove conditional return with no effect 2026-08-04 21:27:53 -07:00
pxa27x_keypad.c Input: pxa27x-keypad - drop support for platform data 2025-09-08 06:35:37 -07:00
qt1050.c Input: qt1050 - inline i2c_check_functionality check 2026-04-08 07:46:01 -07:00
qt1070.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
qt2160.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
samsung-keypad.c Input: samsung-keypad - use pm_runtime_active guard 2026-08-02 18:29:01 -07:00
sh_keysc.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
snvs_pwrkey.c Input: snvs_pwrkey - add press event reporting to avoid event loss during suspend 2026-07-17 09:53:55 -07:00
spear-keyboard.c Input: spear-keyboard - drop support for platform data 2025-09-08 06:38:01 -07:00
st-keyscan.c Input: st-keyscan - use guard notation when acquiring mutex 2024-10-03 08:58:57 -07:00
stmpe-keypad.c Input: switch back to struct platform_driver::remove() 2024-10-15 11:43:25 -07:00
stowaway.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
sun4i-lradc-keys.c Input: sun4i-lradc-keys - don't include 'pm_wakeup.h' directly 2024-11-19 21:35:54 -08:00
sunkbd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
tc3589x-keypad.c Input: tc3589x - use of_property_present() 2024-07-31 12:36:49 -07:00
tca8418_keypad.c Input: tca8418_keypad - enable overflow mode per datasheet (SCPS215G) 2026-07-15 13:57:14 -07:00
tegra-kbc.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
tm2-touchkey.c Input: Use named initializers for arrays of i2c_device_data 2026-05-30 22:10:47 -07:00
twl4030_keypad.c Input: twl4030_keypad - drop support for platform data 2025-09-17 15:00:02 -07:00
xtkbd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00