Files
tactility/Drivers/button-control-module/bindings/tactility,button-control.yaml
Ken Van Hoeylandt fa4a6e255c New kernel drivers and device implementation updates (#561)
- Added modular device support and devicetree bindings for ILI9341, ILI9488, CST816S, XPT2046, and GPIO button input, updating several board configurations for display/touch/backlight/keyboard/battery.
- Added a setting to control deprecated HAL usage (device property + Kconfig).
2026-07-12 23:54:55 +02:00

37 lines
1.4 KiB
YAML

description: >
GPIO button(s) that emulate UI navigation keys, for boards with only 1 or 2 physical
buttons instead of a full keyboard or touchscreen. Exposes a KEYBOARD_TYPE device: each
button's short/long press is translated to an LVGL navigation key, decided once the
button is released (so a long press is only recognized after release, matching how long
a button was actually held).
compatible: "tactility,button-control"
properties:
pin-primary:
type: phandles
required: true
description: >
Primary button GPIO pin. One-button mode (pin-secondary absent): short press = select
next, long press = press/enter. Two-button mode (pin-secondary present): short press =
press/enter, long press = close app.
pin-secondary:
type: phandles
default: GPIO_PIN_SPEC_NONE
description: >
Optional secondary button GPIO pin. When present, enables two-button mode: short press
= select next, long press = select previous. When absent, the device runs in
one-button mode (see pin-primary).
active-low:
type: boolean
default: true
description: Whether a pressed button reads as a logic low level
debounce-ms:
type: int
default: 20
description: Minimum time between recognized level changes, for software debouncing
long-press-ms:
type: int
default: 500
description: Minimum hold duration (from press to release) recognized as a long press