xref: /linux/Documentation/devicetree/bindings/mfd/spacemit,p1.yaml (revision fbf5df34a4dbcd09d433dd4f0916bf9b2ddb16de)
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mfd/spacemit,p1.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: SpacemiT P1 Power Management Integrated Circuit
8
9maintainers:
10  - Troy Mitchell <troy.mitchell@linux.spacemit.com>
11
12description:
13  P1 is an I2C-controlled PMIC produced by SpacemiT.  It implements six
14  constant-on-time buck converters and twelve low-dropout regulators.
15  It also contains a load switch, watchdog timer, real-time clock, eight
16  12-bit ADC channels, and six GPIOs.  Additional details are available
17  in the "Power Stone/P1" section at the following link.
18    https://developer.spacemit.com/documentation
19
20properties:
21  compatible:
22    const: spacemit,p1
23
24  reg:
25    maxItems: 1
26
27  interrupts:
28    maxItems: 1
29
30  vin1-supply:
31    description:
32      Power supply for BUCK1. Required if BUCK1 is defined.
33
34  vin2-supply:
35    description:
36      Power supply for BUCK2. Required if BUCK2 is defined.
37
38  vin3-supply:
39    description:
40      Power supply for BUCK3. Required if BUCK3 is defined.
41
42  vin4-supply:
43    description:
44      Power supply for BUCK4. Required if BUCK4 is defined.
45
46  vin5-supply:
47    description:
48      Power supply for BUCK5. Required if BUCK5 is defined.
49
50  vin6-supply:
51    description:
52      Power supply for BUCK6. Required if BUCK6 is defined.
53
54  aldoin-supply:
55    description:
56      Power supply for ALDO1-4. Required if any are defined.
57
58  dldoin1-supply:
59    description:
60      Power supply for DLDO1-4. Required if any are defined.
61
62  dldoin2-supply:
63    description:
64      Power supply for DLDO5-7. Required if any are defined.
65
66  regulators:
67    type: object
68
69    patternProperties:
70      "^(buck[1-6]|aldo[1-4]|dldo[1-7])$":
71        type: object
72        $ref: /schemas/regulator/regulator.yaml#
73        unevaluatedProperties: false
74
75    unevaluatedProperties: false
76
77required:
78  - compatible
79  - reg
80  - interrupts
81
82unevaluatedProperties: false
83
84examples:
85  - |
86    i2c {
87        #address-cells = <1>;
88        #size-cells = <0>;
89
90        pmic@41 {
91            compatible = "spacemit,p1";
92            reg = <0x41>;
93            interrupts = <64>;
94            vin1-supply = <&reg_vcc_5v>;
95            vin5-supply = <&reg_vcc_5v>;
96            aldoin-supply = <&reg_vcc_5v>;
97            dldoin1-supply = <&buck5>;
98
99            regulators {
100                buck1 {
101                    regulator-name = "buck1";
102                    regulator-min-microvolt = <500000>;
103                    regulator-max-microvolt = <3450000>;
104                    regulator-ramp-delay = <5000>;
105                    regulator-always-on;
106                };
107
108                buck5: buck5 {
109                    regulator-name = "buck5";
110                    regulator-min-microvolt = <500000>;
111                    regulator-max-microvolt = <3450000>;
112                    regulator-ramp-delay = <5000>;
113                    regulator-always-on;
114                };
115
116                aldo1 {
117                    regulator-name = "aldo1";
118                    regulator-min-microvolt = <500000>;
119                    regulator-max-microvolt = <3400000>;
120                    regulator-boot-on;
121                };
122
123                dldo1 {
124                    regulator-name = "dldo1";
125                    regulator-min-microvolt = <500000>;
126                    regulator-max-microvolt = <3400000>;
127                    regulator-boot-on;
128                };
129            };
130        };
131    };
132