1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/iio/adc/ti,am3359-adc.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: TI AM3359 ADC
8
9maintainers:
10  - Miquel Raynal <miquel.raynal@bootlin.com>
11
12properties:
13  compatible:
14    enum:
15      - ti,am3359-adc
16      - ti,am4372-adc
17
18  '#io-channel-cells':
19    const: 1
20
21  ti,adc-channels:
22    description: List of analog inputs available for ADC. AIN0 = 0, AIN1 = 1 and
23      so on until AIN7 = 7.
24    $ref: /schemas/types.yaml#/definitions/uint32-array
25    minItems: 1
26    maxItems: 8
27
28  ti,chan-step-opendelay:
29    description: List of open delays for each channel of ADC in the order of
30      ti,adc-channels. The value corresponds to the number of ADC clock cycles
31      to wait after applying the step configuration registers and before sending
32      the start of ADC conversion. Maximum value is 0x3FFFF.
33    $ref: /schemas/types.yaml#/definitions/uint32-array
34    minItems: 1
35    maxItems: 8
36
37  ti,chan-step-sampledelay:
38    description: List of sample delays for each channel of ADC in the order of
39      ti,adc-channels. The value corresponds to the number of ADC clock cycles
40      to sample (to hold start of conversion high). Maximum value is 0xFF.
41    $ref: /schemas/types.yaml#/definitions/uint32-array
42    minItems: 1
43    maxItems: 8
44
45  ti,chan-step-avg:
46    description: Number of averages to be performed for each channel of ADC. If
47      average is 16 (this is also the maximum) then input is sampled 16 times
48      and averaged to get more accurate value. This increases the time taken by
49      ADC to generate a sample. Maximum value is 16.
50    $ref: /schemas/types.yaml#/definitions/uint32-array
51    minItems: 1
52    maxItems: 8
53
54required:
55  - compatible
56  - '#io-channel-cells'
57  - ti,adc-channels
58
59additionalProperties: false
60
61examples:
62  - |
63    adc {
64        compatible = "ti,am3359-adc";
65        #io-channel-cells = <1>;
66        ti,adc-channels = <4 5 6 7>;
67        ti,chan-step-opendelay = <0x098 0x3ffff 0x098 0x0>;
68        ti,chan-step-sampledelay = <0xff 0x0 0xf 0x0>;
69        ti,chan-step-avg = <16 2 4 8>;
70    };
71