zephyr/drivers/input
Fabio Baltieri 6cd72493ff input: gpio_kbd_matrix: add direct access support
When the matrix is connected to consecutive pins on the same port, it's
possible to read the whole row or set the whole column in a single
operation. For the column, this is only possible if the matrix is
configured for driving unselected column, as there's no API to configure
multiple pins at the same time at the moment.

This is more efficient than checking the pins individually, and it's
particularly useful if the row or columns are driven from a GPIO port
expander.

Add some code to detect the condition and enable it automatically as
long as the hw configuration supports it.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2023-11-22 10:34:40 +00:00
..
CMakeLists.txt input: add a gpio based keyboard matrix driver 2023-11-15 11:41:25 +01:00
input_cap1203.c drivers: gpio: use gpio_is_ready_dt helper function 2023-08-28 08:48:35 -05:00
input_cst816s.c input: cst816s: simplify the reset code 2023-11-06 08:50:33 +00:00
input_ft5336.c input: ft5336: fix reset control polarity 2023-11-06 08:50:33 +00:00
input_gpio_kbd_matrix.c input: gpio_kbd_matrix: add direct access support 2023-11-22 10:34:40 +00:00
input_gpio_keys.c input: gpio_keys: fix CONTAINER_OF declaration 2023-08-28 10:12:21 +02:00
input_gpio_qdec.c drivers,subsys: fix few missing k_work_delayable_from_work 2023-08-28 10:12:21 +02:00
input_gt911.c input: gt911: fix reset control polarity 2023-11-06 08:50:33 +00:00
input_ite_it8xxx2_kbd.c input: gpio_kbd_matrix: define a type for the row data 2023-11-22 09:52:39 +01:00
input_kbd_matrix.c input: gpio_kbd_matrix: define a type for the row data 2023-11-22 09:52:39 +01:00
input_npcx_kbd.c input: gpio_kbd_matrix: define a type for the row data 2023-11-22 09:52:39 +01:00
input_sdl_touch.c input SDL: Split in top and bottom 2023-07-06 16:04:15 +02:00
input_sdl_touch_bottom.c input SDL: Split in top and bottom 2023-07-06 16:04:15 +02:00
input_sdl_touch_bottom.h input SDL: Split in top and bottom 2023-07-06 16:04:15 +02:00
input_stmpe811.c drivers: input: add driver for stmpe811 i2c touch controller 2023-09-22 09:29:56 +02:00
input_xpt2046.c drivers: input: add few missing gpio_add_callback return check 2023-07-19 09:18:38 +00:00
Kconfig input: add a gpio based keyboard matrix driver 2023-11-15 11:41:25 +01:00
Kconfig.cap1203 input: convert cap1203 from kscan 2023-07-25 11:25:51 +02:00
Kconfig.cst816s input: convert cst816s from kscan 2023-07-18 08:55:26 -05:00
Kconfig.ft5336 drivers: input: ft5336: Add support for reset GPIO and FT3267 IC 2023-07-25 09:08:59 +02:00
Kconfig.gpio_kbd_matrix input: add a gpio based keyboard matrix driver 2023-11-15 11:41:25 +01:00
Kconfig.gpio_keys drivers: input: drop the zephyr,gpio-keys binding 2023-08-07 11:26:26 +02:00
Kconfig.gpio_qdec input: add a gpio qdec input driver 2023-06-22 10:46:15 +02:00
Kconfig.gt911 input: convert gt911 from kscan 2023-07-13 14:24:50 +00:00
Kconfig.it8xxx2 input: it8xxx2: use the generic keyboard code 2023-11-16 17:54:00 +01:00
Kconfig.kbd_matrix input: gpio_kbd_matrix: add 16 bit rows support 2023-11-22 09:52:39 +01:00
Kconfig.npcx input: split npcx generic keyboard code into input_kbd_matrix.c 2023-11-13 09:45:28 +01:00
Kconfig.sdl input: convert the kscan_sdl driver from kscan to input 2023-04-11 09:34:23 +02:00
Kconfig.stmpe811 drivers: input: add driver for stmpe811 i2c touch controller 2023-09-22 09:29:56 +02:00
Kconfig.xpt2046 input: convert xpt2046 from kscan 2023-06-27 12:17:06 +00:00