1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mfd/mxs-lradc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Freescale MXS Low-Resolution ADC (LRADC)
maintainers:
- Dario Binacchi <dario.binacchi@amarulasolutions.com>
description:
The LRADC provides 16 physical channels of 12-bit resolution for
analog-to-digital conversion and includes an integrated 4-wire/5-wire
touchscreen controller.
properties:
compatible:
items:
- enum:
- fsl,imx23-lradc
- fsl,imx28-lradc
reg:
maxItems: 1
clocks:
minItems: 1
interrupts:
minItems: 9
maxItems: 13
fsl,lradc-touchscreen-wires:
$ref: /schemas/types.yaml#/definitions/uint32
enum: [4, 5]
description: >
Number of wires used to connect the touchscreen to LRADC.
If this property is not present, then the touchscreen is disabled.
fsl,ave-ctrl:
$ref: /schemas/types.yaml#/definitions/uint32
minimum: 1
maximum: 32
default: 4
description:
Number of samples per direction to calculate an average value.
fsl,ave-delay:
$ref: /schemas/types.yaml#/definitions/uint32
minimum: 2
maximum: 2048
default: 2
description: >
Delay between consecutive samples.
It is used if 'fsl,ave-ctrl' > 1, counts at 2 kHz and its default value (2)
is 1 ms.
fsl,settling:
$ref: /schemas/types.yaml#/definitions/uint32
minimum: 1
maximum: 2047
default: 10
description: >
Delay between plate switch to next sample.
It counts at 2 kHz and its default (10) is 5 ms.
"#io-channel-cells":
const: 1
required:
- compatible
- reg
- clocks
- interrupts
if:
properties:
compatible:
contains:
enum:
- fsl,imx23-lradc
then:
properties:
interrupts:
items:
- description: channel 0
- description: channel 1
- description: channel 2
- description: channel 3
- description: channel 4
- description: channel 5
- description: touchscreen
- description: channel 6
- description: channel 7
fsl,lradc-touchscreen-wires:
const: 4
else:
properties:
interrupts:
items:
- description: threshold 0
- description: threshold 1
- description: channel 0
- description: channel 1
- description: channel 2
- description: channel 3
- description: channel 4
- description: channel 5
- description: button 0
- description: button 1
- description: touchscreen
- description: channel 6
- description: channel 7
additionalProperties: false
examples:
- |
lradc@80050000 {
compatible = "fsl,imx23-lradc";
reg = <0x80050000 0x2000>;
interrupts = <36>, <37>, <38>, <39>, <40>,
<41>, <42>, <43>, <44>;
clocks = <&clks 26>;
#io-channel-cells = <1>;
fsl,lradc-touchscreen-wires = <4>;
fsl,ave-ctrl = <4>;
fsl,ave-delay = <2>;
fsl,settling = <10>;
};
|