About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / devicetree / bindings / input / gpio-keys-polled.txt




Custom Search

Based on kernel version 4.7.2. Page generated on 2016-08-22 22:41 EST.

1	Device-Tree bindings for input/gpio_keys_polled.c keyboard driver
2	
3	Required properties:
4		- compatible = "gpio-keys-polled";
5		- poll-interval: Poll interval time in milliseconds
6	
7	Optional properties:
8		- autorepeat: Boolean, Enable auto repeat feature of Linux input
9		  subsystem.
10	
11	Each button (key) is represented as a sub-node of "gpio-keys-polled":
12	Subnode properties:
13	
14		- gpios: OF device-tree gpio specification.
15		- label: Descriptive name of the key.
16		- linux,code: Key / Axis code to emit.
17	
18	Optional subnode-properties:
19		- linux,input-type: Specify event type this button/key generates.
20		  If not specified defaults to <1> == EV_KEY.
21		- linux,input-value: If linux,input-type is EV_ABS or EV_REL then this
22		  value is sent for events this button generates when pressed.
23		  EV_ABS/EV_REL axis will generate an event with a value of 0 when
24		  all buttons with linux,input-type == type and linux,code == axis
25		  are released. This value is interpreted as a signed 32 bit value,
26		  e.g. to make a button generate a value of -1 use:
27		  linux,input-value = <0xffffffff>; /* -1 */
28		- debounce-interval: Debouncing interval time in milliseconds.
29		  If not specified defaults to 5.
30		- wakeup-source: Boolean, button can wake-up the system.
31				 (Legacy property supported: "gpio-key,wakeup")
32	
33	Example nodes:
34	
35		gpio_keys_polled {
36				compatible = "gpio-keys-polled";
37				#address-cells = <1>;
38				#size-cells = <0>;
39				poll-interval = <100>;
40				autorepeat;
41				button@21 {
42					label = "GPIO Key UP";
43					linux,code = <103>;
44					gpios = <&gpio1 0 1>;
45				};
46				...
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.