1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/iio/adc/qcom,spmi-iadc.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm's SPMI PMIC current ADC
8
9maintainers:
10  - Jonathan Cameron <jic23@kernel.org>
11
12description: |
13  QPNP PMIC current ADC (IADC) provides interface to clients to read current.
14  A 16 bit ADC is used for current measurements. IADC can measure the current
15  through an external resistor (channel 1) or internal (built-in) resistor
16  (channel 0). When using an external resistor it is to be described by
17  qcom,external-resistor-micro-ohms property.
18
19properties:
20  compatible:
21    items:
22      - enum:
23          - qcom,pm8226-iadc
24          - qcom,pm8941-iadc
25      - const: qcom,spmi-iadc
26
27  reg:
28    description: IADC base address and length in the SPMI PMIC register map
29    maxItems: 1
30
31  qcom,external-resistor-micro-ohms:
32    description:
33      Sensor resistor value. If not defined value of 10000 micro Ohms
34      will be used.
35
36  interrupts:
37    maxItems: 1
38    description:
39      End of conversion interrupt.
40
41  "#io-channel-cells":
42    const: 1
43
44required:
45  - compatible
46  - reg
47
48additionalProperties: false
49
50examples:
51  - |
52    #include <dt-bindings/interrupt-controller/irq.h>
53    spmi {
54        #address-cells = <1>;
55        #size-cells = <0>;
56        pmic_iadc: adc@3600 {
57            compatible = "qcom,pm8941-iadc", "qcom,spmi-iadc";
58            reg = <0x3600>;
59            interrupts = <0x0 0x36 0x0 IRQ_TYPE_EDGE_RISING>;
60            qcom,external-resistor-micro-ohms = <10000>;
61            #io-channel-cells  = <1>;
62        };
63    };
64...
65