xref: /linux/Documentation/devicetree/bindings/iio/adc/fsl,imx25-gcq.yaml (revision cbecf716ca618fd44feda6bd9a64a8179d031fc5)
1*49703a36SJonathan Cameron# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*49703a36SJonathan Cameron%YAML 1.2
3*49703a36SJonathan Cameron---
4*49703a36SJonathan Cameron$id: http://devicetree.org/schemas/iio/adc/fsl,imx25-gcq.yaml#
5*49703a36SJonathan Cameron$schema: http://devicetree.org/meta-schemas/core.yaml#
6*49703a36SJonathan Cameron
7*49703a36SJonathan Camerontitle: Freescale ADC GCQ device
8*49703a36SJonathan Cameron
9*49703a36SJonathan Camerondescription:
10*49703a36SJonathan Cameron  This is a generic conversion queue device that can convert any of the
11*49703a36SJonathan Cameron  analog inputs using the ADC unit of the i.MX25.
12*49703a36SJonathan Cameron
13*49703a36SJonathan Cameronmaintainers:
14*49703a36SJonathan Cameron  - Jonathan Cameron <jic23@kernel.org>
15*49703a36SJonathan Cameron
16*49703a36SJonathan Cameronproperties:
17*49703a36SJonathan Cameron  compatible:
18*49703a36SJonathan Cameron    const: fsl,imx25-gcq
19*49703a36SJonathan Cameron
20*49703a36SJonathan Cameron  reg:
21*49703a36SJonathan Cameron    maxItems: 1
22*49703a36SJonathan Cameron
23*49703a36SJonathan Cameron  interrupts:
24*49703a36SJonathan Cameron    maxItems: 1
25*49703a36SJonathan Cameron
26*49703a36SJonathan Cameron  vref-ext-supply:
27*49703a36SJonathan Cameron    description:
28*49703a36SJonathan Cameron      The regulator supplying the ADC reference voltage.
29*49703a36SJonathan Cameron      Required when at least one subnode uses the this reference.
30*49703a36SJonathan Cameron
31*49703a36SJonathan Cameron  vref-xp-supply:
32*49703a36SJonathan Cameron    description:
33*49703a36SJonathan Cameron      The regulator supplying the ADC reference voltage on pin XP.
34*49703a36SJonathan Cameron      Required when at least one subnode uses this reference.
35*49703a36SJonathan Cameron
36*49703a36SJonathan Cameron  vref-yp-supply:
37*49703a36SJonathan Cameron    description:
38*49703a36SJonathan Cameron      The regulator supplying the ADC reference voltage on pin YP.
39*49703a36SJonathan Cameron      Required when at least one subnode uses this reference.
40*49703a36SJonathan Cameron
41*49703a36SJonathan Cameron  "#io-channel-cells":
42*49703a36SJonathan Cameron    const: 1
43*49703a36SJonathan Cameron
44*49703a36SJonathan Cameron  "#address-cells":
45*49703a36SJonathan Cameron    const: 1
46*49703a36SJonathan Cameron
47*49703a36SJonathan Cameron  "#size-cells":
48*49703a36SJonathan Cameron    const: 0
49*49703a36SJonathan Cameron
50*49703a36SJonathan Cameronrequired:
51*49703a36SJonathan Cameron  - compatible
52*49703a36SJonathan Cameron  - reg
53*49703a36SJonathan Cameron  - interrupts
54*49703a36SJonathan Cameron  - "#address-cells"
55*49703a36SJonathan Cameron  - "#size-cells"
56*49703a36SJonathan Cameron
57*49703a36SJonathan CameronpatternProperties:
58*49703a36SJonathan Cameron  "[a-z][a-z0-9]+@[0-9a-f]+$":
59*49703a36SJonathan Cameron    type: object
60*49703a36SJonathan Cameron    description:
61*49703a36SJonathan Cameron      Child nodes used to define the reference voltages used for each channel
62*49703a36SJonathan Cameron
63*49703a36SJonathan Cameron    properties:
64*49703a36SJonathan Cameron      reg:
65*49703a36SJonathan Cameron        description: |
66*49703a36SJonathan Cameron          Number of the analog input.
67*49703a36SJonathan Cameron          0: xp
68*49703a36SJonathan Cameron          1: yp
69*49703a36SJonathan Cameron          2: xn
70*49703a36SJonathan Cameron          3: yn
71*49703a36SJonathan Cameron          4: wiper
72*49703a36SJonathan Cameron          5: inaux0
73*49703a36SJonathan Cameron          6: inaux1
74*49703a36SJonathan Cameron          7: inaux2
75*49703a36SJonathan Cameron        items:
76*49703a36SJonathan Cameron          - minimum: 0
77*49703a36SJonathan Cameron            maximum: 7
78*49703a36SJonathan Cameron
79*49703a36SJonathan Cameron      fsl,adc-refp:
80*49703a36SJonathan Cameron        $ref: /schemas/types.yaml#/definitions/uint32
81*49703a36SJonathan Cameron        description: |
82*49703a36SJonathan Cameron          Specifies the positive reference input as defined in
83*49703a36SJonathan Cameron          <dt-bindings/iio/adc/fsl-imx25-gcq.h>
84*49703a36SJonathan Cameron          0: YP voltage reference
85*49703a36SJonathan Cameron          1: XP voltage reference
86*49703a36SJonathan Cameron          2: External voltage reference
87*49703a36SJonathan Cameron          3: Internal voltage reference (default)
88*49703a36SJonathan Cameron        minimum: 0
89*49703a36SJonathan Cameron        maximum: 3
90*49703a36SJonathan Cameron
91*49703a36SJonathan Cameron      fsl,adc-refn:
92*49703a36SJonathan Cameron        $ref: /schemas/types.yaml#/definitions/uint32
93*49703a36SJonathan Cameron        description: |
94*49703a36SJonathan Cameron          Specifies the negative reference input as defined in
95*49703a36SJonathan Cameron          <dt-bindings/iio/adc/fsl-imx25-gcq.h>
96*49703a36SJonathan Cameron          0: XN ground reference
97*49703a36SJonathan Cameron          1: YN ground reference
98*49703a36SJonathan Cameron          2: Internal ground reference
99*49703a36SJonathan Cameron          3: External ground reference (default)
100*49703a36SJonathan Cameron        minimum: 0
101*49703a36SJonathan Cameron        maximum: 3
102*49703a36SJonathan Cameron
103*49703a36SJonathan Cameron    required:
104*49703a36SJonathan Cameron      - reg
105*49703a36SJonathan Cameron
106*49703a36SJonathan Cameron    additionalProperties: false
107*49703a36SJonathan Cameron
108*49703a36SJonathan CameronadditionalProperties: false
109*49703a36SJonathan Cameron
110*49703a36SJonathan Cameronexamples:
111*49703a36SJonathan Cameron  - |
112*49703a36SJonathan Cameron    #include <dt-bindings/iio/adc/fsl-imx25-gcq.h>
113*49703a36SJonathan Cameron    soc {
114*49703a36SJonathan Cameron        #address-cells = <1>;
115*49703a36SJonathan Cameron        #size-cells = <1>;
116*49703a36SJonathan Cameron        adc@50030800 {
117*49703a36SJonathan Cameron            compatible = "fsl,imx25-gcq";
118*49703a36SJonathan Cameron            reg = <0x50030800 0x60>;
119*49703a36SJonathan Cameron            interrupt-parent = <&tscadc>;
120*49703a36SJonathan Cameron            interrupts = <1>;
121*49703a36SJonathan Cameron            #address-cells = <1>;
122*49703a36SJonathan Cameron            #size-cells = <0>;
123*49703a36SJonathan Cameron
124*49703a36SJonathan Cameron            inaux@5 {
125*49703a36SJonathan Cameron                reg = <5>;
126*49703a36SJonathan Cameron                fsl,adc-refp = <MX25_ADC_REFP_INT>;
127*49703a36SJonathan Cameron                fsl,adc-refn = <MX25_ADC_REFN_NGND>;
128*49703a36SJonathan Cameron            };
129*49703a36SJonathan Cameron        };
130*49703a36SJonathan Cameron    };
131*49703a36SJonathan Cameron...
132