[PATCH v3 0/4] input: add GPIO-based charlieplex keypad
Hugo Villeneuve
hugo at hugovil.com
Wed Feb 25 07:53:57 PST 2026
From: Hugo Villeneuve <hvilleneuve at dimonoff.com>
Hello,
this patch series add a new GPIO charlieplex keypad driver.
The first two patches simply commonize two properties that are present in
a few bindings, so that the actual patches for the charlieplex keypad driver
can reuse them instead of also redefining them.
I have tested the driver on a custom board with a Solidrun RZ/G2LC SOM
with three charlieplex keyboards, all connected thru a single PCA9416 I2C GPIO
expander.
Link: [v1] https://lore.kernel.org/all/20260203155023.536103-1-hugo@hugovil.com/
Link: [v2] https://lore.kernel.org/all/20260213171431.2228814-1-hugo@hugovil.com/
Changes for v3:
- Add ASCII diagram in bindings, and reference to it in example
- Reorder properties alphabetically
- Add patch to define common input settling-time-us property
- Add patch to define common input debounce-delay-ms property
Changes for v2:
- Fix yamllint error for example
- Remove unused debug variable (nkeys)
- Remove support for custom linux,no-autorepeat DT property
- Remove support for custom gpio-activelow DT property
Thank you.
Hugo Villeneuve (4):
dt-bindings: input: add debounce-delay-ms common property
dt-bindings: input: add settling-time-us common property
dt-bindings: input: add GPIO charlieplex keypad
Input: charlieplex_keypad: add GPIO charlieplex keypad
.../bindings/auxdisplay/holtek,ht16k33.yaml | 5 +-
.../bindings/input/cirrus,ep9307-keypad.yaml | 7 +-
.../input/gpio-charlieplex-keypad.yaml | 106 +++++++++
.../bindings/input/gpio-matrix-keypad.yaml | 5 +-
.../devicetree/bindings/input/input.yaml | 16 ++
.../input/mediatek,mt6779-keypad.yaml | 1 +
.../devicetree/bindings/mfd/fsl,mc13xxx.yaml | 2 -
MAINTAINERS | 7 +
drivers/input/keyboard/Kconfig | 14 ++
drivers/input/keyboard/Makefile | 1 +
drivers/input/keyboard/charlieplex_keypad.c | 213 ++++++++++++++++++
11 files changed, 365 insertions(+), 12 deletions(-)
create mode 100644 Documentation/devicetree/bindings/input/gpio-charlieplex-keypad.yaml
create mode 100644 drivers/input/keyboard/charlieplex_keypad.c
base-commit: ab2e361ca97a42b7af8be1d273646b30d3b75bf3
--
2.47.3
More information about the linux-arm-kernel
mailing list