149703a36SJonathan Cameron# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
249703a36SJonathan Cameron%YAML 1.2
349703a36SJonathan Cameron---
449703a36SJonathan Cameron$id: http://devicetree.org/schemas/iio/adc/fsl,imx25-gcq.yaml#
549703a36SJonathan Cameron$schema: http://devicetree.org/meta-schemas/core.yaml#
649703a36SJonathan Cameron
749703a36SJonathan Camerontitle: Freescale ADC GCQ device
849703a36SJonathan Cameron
949703a36SJonathan Camerondescription:
1049703a36SJonathan Cameron  This is a generic conversion queue device that can convert any of the
1149703a36SJonathan Cameron  analog inputs using the ADC unit of the i.MX25.
1249703a36SJonathan Cameron
1349703a36SJonathan Cameronmaintainers:
1449703a36SJonathan Cameron  - Jonathan Cameron <jic23@kernel.org>
1549703a36SJonathan Cameron
1649703a36SJonathan Cameronproperties:
1749703a36SJonathan Cameron  compatible:
1849703a36SJonathan Cameron    const: fsl,imx25-gcq
1949703a36SJonathan Cameron
2049703a36SJonathan Cameron  reg:
2149703a36SJonathan Cameron    maxItems: 1
2249703a36SJonathan Cameron
2349703a36SJonathan Cameron  interrupts:
2449703a36SJonathan Cameron    maxItems: 1
2549703a36SJonathan Cameron
2649703a36SJonathan Cameron  vref-ext-supply:
2749703a36SJonathan Cameron    description:
2849703a36SJonathan Cameron      The regulator supplying the ADC reference voltage.
2949703a36SJonathan Cameron      Required when at least one subnode uses the this reference.
3049703a36SJonathan Cameron
3149703a36SJonathan Cameron  vref-xp-supply:
3249703a36SJonathan Cameron    description:
3349703a36SJonathan Cameron      The regulator supplying the ADC reference voltage on pin XP.
3449703a36SJonathan Cameron      Required when at least one subnode uses this reference.
3549703a36SJonathan Cameron
3649703a36SJonathan Cameron  vref-yp-supply:
3749703a36SJonathan Cameron    description:
3849703a36SJonathan Cameron      The regulator supplying the ADC reference voltage on pin YP.
3949703a36SJonathan Cameron      Required when at least one subnode uses this reference.
4049703a36SJonathan Cameron
4149703a36SJonathan Cameron  "#io-channel-cells":
4249703a36SJonathan Cameron    const: 1
4349703a36SJonathan Cameron
4449703a36SJonathan Cameron  "#address-cells":
4549703a36SJonathan Cameron    const: 1
4649703a36SJonathan Cameron
4749703a36SJonathan Cameron  "#size-cells":
4849703a36SJonathan Cameron    const: 0
4949703a36SJonathan Cameron
5049703a36SJonathan Cameronrequired:
5149703a36SJonathan Cameron  - compatible
5249703a36SJonathan Cameron  - reg
5349703a36SJonathan Cameron  - interrupts
5449703a36SJonathan Cameron  - "#address-cells"
5549703a36SJonathan Cameron  - "#size-cells"
5649703a36SJonathan Cameron
5749703a36SJonathan CameronpatternProperties:
5849703a36SJonathan Cameron  "[a-z][a-z0-9]+@[0-9a-f]+$":
5949703a36SJonathan Cameron    type: object
6049703a36SJonathan Cameron    description:
6149703a36SJonathan Cameron      Child nodes used to define the reference voltages used for each channel
6249703a36SJonathan Cameron
6349703a36SJonathan Cameron    properties:
6449703a36SJonathan Cameron      reg:
6549703a36SJonathan Cameron        description: |
6649703a36SJonathan Cameron          Number of the analog input.
6749703a36SJonathan Cameron          0: xp
6849703a36SJonathan Cameron          1: yp
6949703a36SJonathan Cameron          2: xn
7049703a36SJonathan Cameron          3: yn
7149703a36SJonathan Cameron          4: wiper
7249703a36SJonathan Cameron          5: inaux0
7349703a36SJonathan Cameron          6: inaux1
7449703a36SJonathan Cameron          7: inaux2
7549703a36SJonathan Cameron        items:
7649703a36SJonathan Cameron          - minimum: 0
7749703a36SJonathan Cameron            maximum: 7
7849703a36SJonathan Cameron
7949703a36SJonathan Cameron      fsl,adc-refp:
8049703a36SJonathan Cameron        $ref: /schemas/types.yaml#/definitions/uint32
8149703a36SJonathan Cameron        description: |
8249703a36SJonathan Cameron          Specifies the positive reference input as defined in
8349703a36SJonathan Cameron          <dt-bindings/iio/adc/fsl-imx25-gcq.h>
8449703a36SJonathan Cameron          0: YP voltage reference
8549703a36SJonathan Cameron          1: XP voltage reference
8649703a36SJonathan Cameron          2: External voltage reference
8749703a36SJonathan Cameron          3: Internal voltage reference (default)
8849703a36SJonathan Cameron        minimum: 0
8949703a36SJonathan Cameron        maximum: 3
9049703a36SJonathan Cameron
9149703a36SJonathan Cameron      fsl,adc-refn:
9249703a36SJonathan Cameron        $ref: /schemas/types.yaml#/definitions/uint32
9349703a36SJonathan Cameron        description: |
9449703a36SJonathan Cameron          Specifies the negative reference input as defined in
9549703a36SJonathan Cameron          <dt-bindings/iio/adc/fsl-imx25-gcq.h>
9649703a36SJonathan Cameron          0: XN ground reference
9749703a36SJonathan Cameron          1: YN ground reference
9849703a36SJonathan Cameron          2: Internal ground reference
9949703a36SJonathan Cameron          3: External ground reference (default)
10049703a36SJonathan Cameron        minimum: 0
10149703a36SJonathan Cameron        maximum: 3
10249703a36SJonathan Cameron
10349703a36SJonathan Cameron    required:
10449703a36SJonathan Cameron      - reg
10549703a36SJonathan Cameron
10649703a36SJonathan Cameron    additionalProperties: false
10749703a36SJonathan Cameron
10849703a36SJonathan CameronadditionalProperties: false
10949703a36SJonathan Cameron
11049703a36SJonathan Cameronexamples:
11149703a36SJonathan Cameron  - |
11249703a36SJonathan Cameron    #include <dt-bindings/iio/adc/fsl-imx25-gcq.h>
11349703a36SJonathan Cameron    soc {
11449703a36SJonathan Cameron        #address-cells = <1>;
11549703a36SJonathan Cameron        #size-cells = <1>;
11649703a36SJonathan Cameron        adc@50030800 {
11749703a36SJonathan Cameron            compatible = "fsl,imx25-gcq";
11849703a36SJonathan Cameron            reg = <0x50030800 0x60>;
11949703a36SJonathan Cameron            interrupt-parent = <&tscadc>;
12049703a36SJonathan Cameron            interrupts = <1>;
12149703a36SJonathan Cameron            #address-cells = <1>;
12249703a36SJonathan Cameron            #size-cells = <0>;
12349703a36SJonathan Cameron
12449703a36SJonathan Cameron            inaux@5 {
12549703a36SJonathan Cameron                reg = <5>;
12649703a36SJonathan Cameron                fsl,adc-refp = <MX25_ADC_REFP_INT>;
12749703a36SJonathan Cameron                fsl,adc-refn = <MX25_ADC_REFN_NGND>;
12849703a36SJonathan Cameron            };
12949703a36SJonathan Cameron        };
13049703a36SJonathan Cameron    };
13149703a36SJonathan Cameron...
132