xref: /linux/Documentation/devicetree/bindings/mfd/spacemit,p1.yaml (revision 4f38da1f027ea2c9f01bb71daa7a299c191b6940)
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  vin-supply:
31    description: Input supply phandle.
32
33  regulators:
34    type: object
35
36    patternProperties:
37      "^(buck[1-6]|aldo[1-4]|dldo[1-7])$":
38        type: object
39        $ref: /schemas/regulator/regulator.yaml#
40        unevaluatedProperties: false
41
42    unevaluatedProperties: false
43
44required:
45  - compatible
46  - reg
47  - interrupts
48
49unevaluatedProperties: false
50
51examples:
52  - |
53    i2c {
54        #address-cells = <1>;
55        #size-cells = <0>;
56
57        pmic@41 {
58            compatible = "spacemit,p1";
59            reg = <0x41>;
60            interrupts = <64>;
61
62            regulators {
63                buck1 {
64                    regulator-name = "buck1";
65                    regulator-min-microvolt = <500000>;
66                    regulator-max-microvolt = <3450000>;
67                    regulator-ramp-delay = <5000>;
68                    regulator-always-on;
69                };
70
71                aldo1 {
72                    regulator-name = "aldo1";
73                    regulator-min-microvolt = <500000>;
74                    regulator-max-microvolt = <3400000>;
75                    regulator-boot-on;
76                };
77
78                dldo1 {
79                    regulator-name = "dldo1";
80                    regulator-min-microvolt = <500000>;
81                    regulator-max-microvolt = <3400000>;
82                    regulator-boot-on;
83                };
84            };
85        };
86    };
87