mirror-linux/drivers/input
Javier Carrasco ea4d331050 Input: touch-overlay - add touchscreen overlay handling
Some touch devices provide mechanical overlays with different objects
like buttons or clipped touchscreen surfaces.

In order to support these objects, add a series of helper functions
to the input subsystem to transform them into overlay objects via
device tree nodes.

These overlay objects consume the raw touch events and report the
expected input events depending on the object properties.

Note that the current implementation allows for multiple definitions
of touchscreen areas (regions that report touch events), but only the
first one will be used for the touchscreen device that the consumers
typically provide.
Should the need for multiple touchscreen areas arise, additional
touchscreen devices would be required at the consumer side.
There is no limitation in the number of touch areas defined as buttons.

Reviewed-by: Jeff LaBundy <jeff@labundy.com>
Signed-off-by: Javier Carrasco <javier.carrasco@wolfvision.net>
Link: https://lore.kernel.org/r/20241016-feature-ts_virtobj_patch-v11-2-b292a1bbb0a1@wolfvision.net
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2025-07-27 01:41:21 -07:00
..
gameport treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
joystick Input: xpad - use new BTN_GRIP* buttons 2025-07-27 01:41:20 -07:00
keyboard Input: atkbd - correctly map F13 - F24 2025-07-27 01:41:20 -07:00
misc Input: cs40l50 - remove redundant flush_workqueue() calls 2025-07-01 11:34:40 -07:00
mouse Input updates for v6.15-rc5 2025-05-11 10:29:29 -07:00
rmi4 Input: synaptics-rmi4 - add support for F1A 2025-07-27 01:41:19 -07:00
serio treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
tablet Input updates for v6.13-rc0 2024-11-25 10:31:39 -08:00
tests
touchscreen Input: edt-ft5x06 - add support for FocalTech FT8716 2025-07-01 11:44:27 -07:00
Kconfig Input: remove evbug driver 2024-12-17 13:53:52 -08:00
Makefile Input: touch-overlay - add touchscreen overlay handling 2025-07-27 01:41:21 -07:00
apm-power.c
evdev.c Input: evdev - switch matching to EV_SYN 2025-07-01 21:02:57 -07:00
ff-core.c Input: ff-core - make use of __free() cleanup facility 2024-12-23 22:53:21 -08:00
ff-memless.c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
input-compat.c
input-compat.h
input-core-private.h
input-leds.c
input-mt.c Input: mt - make use of __free() cleanup facility 2024-12-23 22:53:57 -08:00
input-poller.c Input: poller - convert locking to guard notation 2024-12-23 22:53:57 -08:00
input-poller.h
input.c Input: remove special handling of id->driver_info when matching 2025-07-01 21:02:58 -07:00
joydev.c
matrix-keymap.c
mousedev.c
sparse-keymap.c input: sparse-keymap: use devm_kmemdup_array() 2025-02-24 12:08:52 +02:00
touch-overlay.c Input: touch-overlay - add touchscreen overlay handling 2025-07-27 01:41:21 -07:00
touchscreen.c
vivaldi-fmap.c