| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- 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 above or equal to 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 above or equal to which this key is
- considered pressed.
- No two values of press-threshold-microvolt may be the same.
- All values of press-threshold-microvolt must be less than
- keyup-threshold-microvolt.
- 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>;
- };
- };
- +--------------------------------+------------------------+
- | 2.000.000 <= value | no key pressed |
- +--------------------------------+------------------------+
- | 1.500.000 <= value < 2.000.000 | KEY_VOLUMEUP pressed |
- +--------------------------------+------------------------+
- | 1.000.000 <= value < 1.500.000 | KEY_VOLUMEDOWN pressed |
- +--------------------------------+------------------------+
- | 500.000 <= value < 1.000.000 | KEY_ENTER pressed |
- +--------------------------------+------------------------+
- | value < 500.000 | no key pressed |
- +--------------------------------+------------------------+
|