Sophie

Sophie

distrib > Mageia > 5 > x86_64 > media > core-updates > by-pkgid > 96315bee2319c8af525e2f4f3f7ad32b > files > 1693

kernel-linus-doc-4.4.39-1.mga5.noarch.rpm

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";
			#address-cells = <1>;
			#size-cells = <0>;
			poll-interval = <100>;
			autorepeat;
			button@21 {
				label = "GPIO Key UP";
				linux,code = <103>;
				gpios = <&gpio1 0 1>;
			};
			...