51 lines
1.4 KiB
Plaintext
51 lines
1.4 KiB
Plaintext
|
Device-Tree bindings for input/gpio_keys.c keyboard driver
|
||
|
|
||
|
Required properties:
|
||
|
- compatible = "gpio-keys";
|
||
|
|
||
|
Optional properties:
|
||
|
- autorepeat: Boolean, Enable auto repeat feature of Linux input
|
||
|
subsystem.
|
||
|
- label: String, name of the input device.
|
||
|
|
||
|
Each button (key) is represented as a sub-node of "gpio-keys":
|
||
|
Subnode properties:
|
||
|
|
||
|
- gpios: OF device-tree gpio specification.
|
||
|
- interrupts: the interrupt line for that input.
|
||
|
- label: Descriptive name of the key.
|
||
|
- linux,code: Keycode to emit.
|
||
|
|
||
|
Note that either "interrupts" or "gpios" properties can be omitted, but not
|
||
|
both at the same time. Specifying both properties is allowed.
|
||
|
|
||
|
Optional subnode-properties:
|
||
|
- linux,input-type: Specify event type this button/key generates.
|
||
|
If not specified defaults to <1> == EV_KEY.
|
||
|
- 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")
|
||
|
- linux,can-disable: Boolean, indicates that button is connected
|
||
|
to dedicated (not shared) interrupt which can be disabled to
|
||
|
suppress events from the button.
|
||
|
|
||
|
Example nodes:
|
||
|
|
||
|
gpio-keys {
|
||
|
compatible = "gpio-keys";
|
||
|
autorepeat;
|
||
|
|
||
|
up {
|
||
|
label = "GPIO Key UP";
|
||
|
linux,code = <103>;
|
||
|
gpios = <&gpio1 0 1>;
|
||
|
};
|
||
|
|
||
|
down {
|
||
|
label = "GPIO Key DOWN";
|
||
|
linux,code = <108>;
|
||
|
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
|
||
|
};
|
||
|
...
|