xref: /linux/Documentation/devicetree/bindings/regulator/richtek,rt5133.yaml (revision db4a3f0fbedb0398f77b9047e8b8bb2b49f355bb)
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/richtek,rt5133.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Richtek RT5133 PMIC Regulator
8
9maintainers:
10  - ShihChia Chang <jeff_chang@richtek.com>
11
12description:
13  The RT5133 is an integrated Power Management IC for portable devices,
14  featuring 8 LDOs and 3 GPOs. It allows programmable output voltages,
15  soft-start times, and protections via I2C. GPO operation depends on LDO1
16  voltage.
17
18properties:
19  compatible:
20    enum:
21      - richtek,rt5133
22
23  reg:
24    maxItems: 1
25
26  enable-gpios:
27    maxItems: 1
28
29  wakeup-source: true
30
31  interrupts:
32    maxItems: 1
33
34  gpio-controller: true
35
36  "#gpio-cells":
37    const: 2
38
39  richtek,oc-shutdown-all:
40    type: boolean
41    description:
42      Controls the behavior when any LDO (Low Dropout Regulator) enters an
43      Over Current state.
44      If set to true, all LDO channels will be shut down.
45      If set to false, only the affected LDO channel will shut down itself.
46
47  richtek,pgb-shutdown-all:
48    type: boolean
49    description:
50      Controls the behavior when any LDO enters a Power Good Bad state.
51      If set to true, all LDO channels will be shut down.
52      If set to false, only the affected LDO channel will shut down itself.
53
54  regulators:
55    type: object
56    additionalProperties: false
57
58    properties:
59      base:
60        type: object
61        $ref: regulator.yaml#
62        unevaluatedProperties: false
63        description:
64          Properties for the base regulator, which is the top-level supply for
65          LDO1 to LDO6. It functions merely as an on/off switch rather than
66          regulating voltages. If none of LDO1 to LDO6 are in use, switching
67          off the base will reduce the quiescent current.
68
69        required:
70          - regulator-name
71
72    patternProperties:
73      "^ldo([1-6])$":
74        type: object
75        $ref: regulator.yaml#
76        unevaluatedProperties: false
77        description:
78          Properties for single LDO regulator
79
80        required:
81          - regulator-name
82
83      "^ldo([7-8])$":
84        type: object
85        $ref: regulator.yaml#
86        unevaluatedProperties: false
87        description:
88          Properties for single LDO regulator
89
90        properties:
91          vin-supply: true
92
93        required:
94          - regulator-name
95          - vin-supply
96
97required:
98  - compatible
99  - reg
100  - interrupts
101
102additionalProperties: false
103
104examples:
105  - |
106    #include <dt-bindings/interrupt-controller/irq.h>
107    #include <dt-bindings/gpio/gpio.h>
108    i2c {
109      #address-cells = <1>;
110      #size-cells = <0>;
111
112      pmic@18 {
113        compatible = "richtek,rt5133";
114        reg = <0x18>;
115        wakeup-source;
116        interrupts-extended = <&gpio 0 IRQ_TYPE_EDGE_FALLING>;
117        enable-gpios = <&gpio 2 GPIO_ACTIVE_HIGH>;
118        gpio-controller;
119        #gpio-cells = <2>;
120        richtek,oc-shutdown-all;
121        richtek,pgb-shutdown-all;
122        regulators {
123          base {
124            regulator-name = "base";
125          };
126          pvin78: ldo1 {
127            regulator-name = "ldo1";
128            regulator-min-microvolt = <1800000>;
129            regulator-max-microvolt = <3199998>;
130            regulator-active-discharge = <1>;
131          };
132          ldo2 {
133            regulator-name = "ldo2";
134            regulator-min-microvolt = <1800000>;
135            regulator-max-microvolt = <3200000>;
136            regulator-active-discharge = <1>;
137          };
138          ldo3 {
139            regulator-name = "ldo3";
140            regulator-min-microvolt = <1700000>;
141            regulator-max-microvolt = <3000000>;
142            regulator-active-discharge = <1>;
143          };
144          ldo4 {
145            regulator-name = "ldo4";
146            regulator-min-microvolt = <1700000>;
147            regulator-max-microvolt = <3000000>;
148            regulator-active-discharge = <1>;
149          };
150          ldo5 {
151            regulator-name = "ldo5";
152            regulator-min-microvolt = <1700000>;
153            regulator-max-microvolt = <3000000>;
154            regulator-active-discharge = <1>;
155          };
156          ldo6 {
157            regulator-name = "ldo6";
158            regulator-min-microvolt = <1700000>;
159            regulator-max-microvolt = <3000000>;
160            regulator-active-discharge = <1>;
161          };
162          ldo7 {
163            regulator-name = "ldo7";
164            regulator-min-microvolt = <900000>;
165            regulator-max-microvolt = <1200000>;
166            regulator-active-discharge = <1>;
167            vin-supply = <&pvin78>;
168          };
169          ldo8 {
170            regulator-name = "ldo8";
171            regulator-min-microvolt = <855000>;
172            regulator-max-microvolt = <1200000>;
173            regulator-active-discharge = <1>;
174            vin-supply = <&pvin78>;
175          };
176        };
177      };
178    };
179