GNU Linux-libre 6.8.9-gnu
[releases.git] / Documentation / devicetree / bindings / mfd / hisilicon,hi6421-spmi-pmic.yaml
1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/mfd/hisilicon,hi6421-spmi-pmic.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: HiSilicon 6421v600 SPMI PMIC
8
9 maintainers:
10   - Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
11
12 description: |
13   HiSilicon 6421v600 should be connected inside a MIPI System Power Management
14   (SPMI) bus. It provides interrupts and power supply.
15
16   The GPIO and interrupt settings are represented as part of the top-level PMIC
17   node.
18
19   The SPMI controller part is provided by
20   Documentation/devicetree/bindings/spmi/hisilicon,hisi-spmi-controller.yaml
21
22 properties:
23   $nodename:
24     pattern: "pmic@[0-9a-f]"
25
26   compatible:
27     const: hisilicon,hi6421v600-spmi
28
29   reg:
30     maxItems: 1
31
32   '#interrupt-cells':
33     const: 2
34
35   interrupt-controller: true
36
37   interrupts:
38     maxItems: 1
39
40   regulators:
41     type: object
42
43     additionalProperties: false
44
45     patternProperties:
46       '^ldo[0-9]+$':
47         type: object
48
49         $ref: /schemas/regulator/regulator.yaml#
50
51         unevaluatedProperties: false
52
53 required:
54   - compatible
55   - reg
56   - regulators
57
58 additionalProperties: false
59
60 examples:
61   - |
62     #include <dt-bindings/spmi/spmi.h>
63
64     spmi {
65         #address-cells = <2>;
66         #size-cells = <0>;
67
68         pmic@0 {
69             compatible = "hisilicon,hi6421v600-spmi";
70             reg = <0 SPMI_USID>;
71
72             #interrupt-cells = <2>;
73             interrupt-controller;
74             interrupt-parent = <&gpio28>;
75             interrupts = <0 0>;
76
77             regulators {
78                 ldo3 {
79                     regulator-name = "ldo3";
80                     regulator-min-microvolt = <1500000>;
81                     regulator-max-microvolt = <2000000>;
82                     regulator-boot-on;
83                 };
84
85                 ldo4 {
86                     regulator-name = "ldo4";
87                     regulator-min-microvolt = <1725000>;
88                     regulator-max-microvolt = <1900000>;
89                     regulator-boot-on;
90                 };
91
92                 ldo9 {
93                     regulator-name = "ldo9";
94                     regulator-min-microvolt = <1750000>;
95                     regulator-max-microvolt = <3300000>;
96                     regulator-boot-on;
97                 };
98
99                 ldo15 {
100                     regulator-name = "ldo15";
101                     regulator-min-microvolt = <1800000>;
102                     regulator-max-microvolt = <3000000>;
103                     regulator-always-on;
104                 };
105
106                 ldo16 {
107                     regulator-name = "ldo16";
108                     regulator-min-microvolt = <1800000>;
109                     regulator-max-microvolt = <3000000>;
110                     regulator-boot-on;
111                 };
112
113                 ldo17 {
114                     regulator-name = "ldo17";
115                     regulator-min-microvolt = <2500000>;
116                     regulator-max-microvolt = <3300000>;
117                 };
118
119                 ldo33 {
120                     regulator-name = "ldo33";
121                     regulator-min-microvolt = <2500000>;
122                     regulator-max-microvolt = <3300000>;
123                     regulator-boot-on;
124                 };
125
126                 ldo34 {
127                     regulator-name = "ldo34";
128                     regulator-min-microvolt = <2600000>;
129                     regulator-max-microvolt = <3300000>;
130                 };
131             };
132         };
133     };