Input: synaptics-rmi4 - add device tree support to the SPI transport driver
[linux-2.6/btrfs-unstable.git] / Documentation / devicetree / bindings / input / gpio-keys.txt
blobcf1333d1dd52974e4e960a7c97418f86864e56f1
1 Device-Tree bindings for input/gpio_keys.c keyboard driver
3 Required properties:
4         - compatible = "gpio-keys";
6 Optional properties:
7         - autorepeat: Boolean, Enable auto repeat feature of Linux input
8           subsystem.
10 Each button (key) is represented as a sub-node of "gpio-keys":
11 Subnode properties:
13         - gpios: OF device-tree gpio specification.
14         - interrupts: the interrupt line for that input.
15         - label: Descriptive name of the key.
16         - linux,code: Keycode to emit.
18 Note that either "interrupts" or "gpios" properties can be omitted, but not
19 both at the same time. Specifying both properties is allowed.
21 Optional subnode-properties:
22         - linux,input-type: Specify event type this button/key generates.
23           If not specified defaults to <1> == EV_KEY.
24         - debounce-interval: Debouncing interval time in milliseconds.
25           If not specified defaults to 5.
26         - wakeup-source: Boolean, button can wake-up the system.
27                          (Legacy property supported: "gpio-key,wakeup")
28         - linux,can-disable: Boolean, indicates that button is connected
29           to dedicated (not shared) interrupt which can be disabled to
30           suppress events from the button.
32 Example nodes:
34         gpio_keys {
35                         compatible = "gpio-keys";
36                         #address-cells = <1>;
37                         #size-cells = <0>;
38                         autorepeat;
39                         button@21 {
40                                 label = "GPIO Key UP";
41                                 linux,code = <103>;
42                                 gpios = <&gpio1 0 1>;
43                         };
44                         button@22 {
45                                 label = "GPIO Key DOWN";
46                                 linux,code = <108>;
47                                 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
48                         };
49                         ...