45 lines
1.5 KiB
Text
45 lines
1.5 KiB
Text
Device-Tree bindings for input/gpio_keys_polled.c keyboard driver
|
|
|
|
Required properties:
|
|
- compatible = "gpio-keys-polled";
|
|
- poll-interval: Poll interval time in milliseconds
|
|
|
|
Optional properties:
|
|
- autorepeat: Boolean, Enable auto repeat feature of Linux input
|
|
subsystem.
|
|
|
|
Each button (key) is represented as a sub-node of "gpio-keys-polled":
|
|
Subnode properties:
|
|
|
|
- gpios: OF device-tree gpio specification.
|
|
- label: Descriptive name of the key.
|
|
- linux,code: Key / Axis code to emit.
|
|
|
|
Optional subnode-properties:
|
|
- linux,input-type: Specify event type this button/key generates.
|
|
If not specified defaults to <1> == EV_KEY.
|
|
- linux,input-value: If linux,input-type is EV_ABS or EV_REL then this
|
|
value is sent for events this button generates when pressed.
|
|
EV_ABS/EV_REL axis will generate an event with a value of 0 when
|
|
all buttons with linux,input-type == type and linux,code == axis
|
|
are released. This value is interpreted as a signed 32 bit value,
|
|
e.g. to make a button generate a value of -1 use:
|
|
linux,input-value = <0xffffffff>; /* -1 */
|
|
- debounce-interval: Debouncing interval time in milliseconds.
|
|
If not specified defaults to 5.
|
|
- wakeup-source: Boolean, button can wake-up the system.
|
|
(Legacy property supported: "gpio-key,wakeup")
|
|
|
|
Example nodes:
|
|
|
|
gpio_keys_polled {
|
|
compatible = "gpio-keys-polled";
|
|
poll-interval = <100>;
|
|
autorepeat;
|
|
|
|
button21 {
|
|
label = "GPIO Key UP";
|
|
linux,code = <103>;
|
|
gpios = <&gpio1 0 1>;
|
|
};
|
|
...
|