Sophie

Sophie

distrib > Mageia > 7 > i586 > media > core-updates > by-pkgid > 8b1b14f34030bfa38399b9439603610b > files > 2426

kernel-linus-doc-5.4.20-1.mga7.noarch.rpm

ADC attached resistor ladder buttons
------------------------------------

Required properties:
 - compatible: "adc-keys"
 - io-channels: Phandle to an ADC channel
 - io-channel-names = "buttons";
 - keyup-threshold-microvolt: Voltage at which all the keys are considered up.

Optional properties:
	- poll-interval: Poll interval time in milliseconds
	- autorepeat: Boolean, Enable auto repeat feature of Linux input
	  subsystem.

Each button (key) is represented as a sub-node of "adc-keys":

Required subnode-properties:
	- label: Descriptive name of the key.
	- linux,code: Keycode to emit.
	- press-threshold-microvolt: Voltage ADC input when this key is pressed.

Example:

#include <dt-bindings/input/input.h>

	adc-keys {
		compatible = "adc-keys";
		io-channels = <&lradc 0>;
		io-channel-names = "buttons";
		keyup-threshold-microvolt = <2000000>;

		button-up {
			label = "Volume Up";
			linux,code = <KEY_VOLUMEUP>;
			press-threshold-microvolt = <1500000>;
		};

		button-down {
			label = "Volume Down";
			linux,code = <KEY_VOLUMEDOWN>;
			press-threshold-microvolt = <1000000>;
		};

		button-enter {
			label = "Enter";
			linux,code = <KEY_ENTER>;
			press-threshold-microvolt = <500000>;
		};
	};