brintos

brintos / linux-shallow public Read only

0
0
Text · 2.7 KiB · 7aa078d Raw
104 lines · yaml
1# SPDX-License-Identifier: GPL-2.02%YAML 1.23---4$id: http://devicetree.org/schemas/input/adc-keys.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: ADC attached resistor ladder buttons8 9maintainers:10  - Alexandre Belloni <alexandre.belloni@bootlin.com>11 12allOf:13  - $ref: input.yaml#14 15properties:16  compatible:17    const: adc-keys18 19  io-channels:20    maxItems: 121 22  io-channel-names:23    const: buttons24 25  keyup-threshold-microvolt:26    description:27      Voltage above or equal to which all the keys are considered up.28 29  poll-interval: true30  autorepeat: true31 32patternProperties:33  '^button-':34    type: object35    $ref: input.yaml#36    additionalProperties: false37    description:38      Each button (key) is represented as a sub-node.39 40    properties:41      label: true42 43      linux,code: true44 45      press-threshold-microvolt:46        description:47          Voltage above or equal to which this key is considered pressed. No48          two values of press-threshold-microvolt may be the same. All values49          of press-threshold-microvolt must be less than50          keyup-threshold-microvolt.51 52    required:53      - linux,code54      - press-threshold-microvolt55 56required:57  - compatible58  - io-channels59  - io-channel-names60  - keyup-threshold-microvolt61 62additionalProperties: false63 64examples:65  - |66    #include <dt-bindings/input/input.h>67    // +--------------------------------+------------------------+68    // | 2.000.000 <= value             | no key pressed         |69    // +--------------------------------+------------------------+70    // | 1.500.000 <= value < 2.000.000 | KEY_VOLUMEUP pressed   |71    // +--------------------------------+------------------------+72    // | 1.000.000 <= value < 1.500.000 | KEY_VOLUMEDOWN pressed |73    // +--------------------------------+------------------------+74    // |   500.000 <= value < 1.000.000 | KEY_ENTER pressed      |75    // +--------------------------------+------------------------+76    // |              value <   500.000 | no key pressed         |77    // +--------------------------------+------------------------+78 79    adc-keys {80        compatible = "adc-keys";81        io-channels = <&lradc 0>;82        io-channel-names = "buttons";83        keyup-threshold-microvolt = <2000000>;84 85        button-up {86            label = "Volume Up";87            linux,code = <KEY_VOLUMEUP>;88            press-threshold-microvolt = <1500000>;89        };90 91        button-down {92            label = "Volume Down";93            linux,code = <KEY_VOLUMEDOWN>;94            press-threshold-microvolt = <1000000>;95        };96 97        button-enter {98            label = "Enter";99            linux,code = <KEY_ENTER>;100            press-threshold-microvolt = <500000>;101        };102    };103...104