]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - Bindings/input/allwinner,sun4i-a10-lradc-keys.yaml
Import device-tree files from Linux 6.2
[FreeBSD/FreeBSD.git] / Bindings / input / allwinner,sun4i-a10-lradc-keys.yaml
1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/input/allwinner,sun4i-a10-lradc-keys.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Allwinner A10 LRADC
8
9 maintainers:
10   - Chen-Yu Tsai <wens@csie.org>
11   - Maxime Ripard <mripard@kernel.org>
12
13 properties:
14   compatible:
15     oneOf:
16       - const: allwinner,sun4i-a10-lradc-keys
17       - const: allwinner,sun8i-a83t-r-lradc
18       - items:
19           - enum:
20               - allwinner,suniv-f1c100s-lradc
21               - allwinner,sun50i-a64-lradc
22           - const: allwinner,sun8i-a83t-r-lradc
23       - const: allwinner,sun50i-r329-lradc
24       - items:
25           - const: allwinner,sun20i-d1-lradc
26           - const: allwinner,sun50i-r329-lradc
27
28   reg:
29     maxItems: 1
30
31   clocks:
32     maxItems: 1
33
34   resets:
35     maxItems: 1
36
37   interrupts:
38     maxItems: 1
39
40   vref-supply:
41     description:
42       Regulator for the LRADC reference voltage
43
44   wakeup-source: true
45
46 patternProperties:
47   "^button-[0-9]+$":
48     type: object
49     $ref: input.yaml#
50     properties:
51       label:
52         $ref: /schemas/types.yaml#/definitions/string
53         description: Descriptive name of the key
54
55       linux,code: true
56
57       channel:
58         $ref: /schemas/types.yaml#/definitions/uint32
59         enum: [0, 1]
60         description: ADC Channel this key is attached to
61
62       voltage:
63         $ref: /schemas/types.yaml#/definitions/uint32
64         description:
65           Voltage in microvolts at LRADC input when this key is
66           pressed
67
68     required:
69       - label
70       - linux,code
71       - channel
72       - voltage
73
74     additionalProperties: false
75
76 required:
77   - compatible
78   - reg
79   - interrupts
80   - vref-supply
81
82 if:
83   properties:
84     compatible:
85       contains:
86         enum:
87           - allwinner,sun50i-r329-lradc
88
89 then:
90   required:
91     - clocks
92     - resets
93
94 additionalProperties: false
95
96 examples:
97   - |
98     lradc: lradc@1c22800 {
99         compatible = "allwinner,sun4i-a10-lradc-keys";
100         reg = <0x01c22800 0x100>;
101         interrupts = <31>;
102         vref-supply = <&reg_vcc3v0>;
103
104         button-191 {
105             label = "Volume Up";
106             linux,code = <115>;
107             channel = <0>;
108             voltage = <191274>;
109         };
110
111         button-392 {
112             label = "Volume Down";
113             linux,code = <114>;
114             channel = <0>;
115             voltage = <392644>;
116         };
117     };
118
119 ...