1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/iio/adc/ti,palmas-gpadc.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Palmas general purpose ADC IP block devicetree bindings
8
9maintainers:
10  - Tony Lindgren <tony@atomide.com>
11
12description: |
13  This ADC is often used to provide channels via the io-channels
14  consumer framework.
15  Channels list:
16    0 battery type
17    1 battery temp NTC (optional current source)
18    2 GP
19    3 temp (with ext. diode, optional current source)
20    4 GP
21    5 GP
22    6 VBAT_SENSE
23    7 VCC_SENSE
24    8 Backup Battery voltage
25    9 external charger (VCHG)
26    10 VBUS
27    11 DC-DC current probe (how does this work?)
28    12 internal die temp
29    13 internal die temp
30    14 USB ID pin voltage
31    15 test network
32
33properties:
34  compatible:
35    const: ti,palmas-gpadc
36
37  interrupts:
38    minItems: 1
39    maxItems: 3
40
41  "#io-channel-cells":
42    const: 1
43
44  ti,channel0-current-microamp:
45    description: Channel 0 current in uA.
46    enum:
47      - 0
48      - 5
49      - 15
50      - 20
51
52  ti,channel3-current-microamp:
53    description: Channel 3 current in uA.
54    enum:
55      - 0
56      - 10
57      - 400
58      - 800
59
60  ti,enable-extended-delay:
61    $ref: /schemas/types.yaml#/definitions/flag
62    description: Enable extended delay.
63
64additionalProperties: false
65
66required:
67  - compatible
68  - "#io-channel-cells"
69
70examples:
71  - |
72    #include <dt-bindings/clock/mt8183-clk.h>
73    pmic {
74        compatible = "ti,twl6035-pmic", "ti,palmas-pmic";
75        adc {
76            compatible = "ti,palmas-gpadc";
77            interrupts = <18 0
78                          16 0
79                          17 0>;
80            #io-channel-cells = <1>;
81            ti,channel0-current-microamp = <5>;
82            ti,channel3-current-microamp = <10>;
83        };
84    };
85...
86