xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/regulator/mps,mpq7920.yaml (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*4882a593Smuzhiyun%YAML 1.2
3*4882a593Smuzhiyun---
4*4882a593Smuzhiyun$id: http://devicetree.org/schemas/regulator/mps,mpq7920.yaml#
5*4882a593Smuzhiyun$schema: http://devicetree.org/meta-schemas/core.yaml#
6*4882a593Smuzhiyun
7*4882a593Smuzhiyuntitle: Monolithic Power System MPQ7920 PMIC
8*4882a593Smuzhiyun
9*4882a593Smuzhiyunmaintainers:
10*4882a593Smuzhiyun  - Saravanan Sekar <sravanhome@gmail.com>
11*4882a593Smuzhiyun
12*4882a593Smuzhiyunproperties:
13*4882a593Smuzhiyun  $nodename:
14*4882a593Smuzhiyun    pattern: "pmic@[0-9a-f]{1,2}"
15*4882a593Smuzhiyun  compatible:
16*4882a593Smuzhiyun    enum:
17*4882a593Smuzhiyun      - mps,mpq7920
18*4882a593Smuzhiyun
19*4882a593Smuzhiyun  reg:
20*4882a593Smuzhiyun    maxItems: 1
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun  regulators:
23*4882a593Smuzhiyun    type: object
24*4882a593Smuzhiyun    $ref: regulator.yaml#
25*4882a593Smuzhiyun
26*4882a593Smuzhiyun    description: |
27*4882a593Smuzhiyun      list of regulators provided by this controller, must be named
28*4882a593Smuzhiyun      after their hardware counterparts BUCK[1-4], one LDORTC, and LDO[2-5]
29*4882a593Smuzhiyun
30*4882a593Smuzhiyun    properties:
31*4882a593Smuzhiyun      mps,switch-freq:
32*4882a593Smuzhiyun        $ref: "/schemas/types.yaml#/definitions/uint8"
33*4882a593Smuzhiyun        enum: [0, 1, 2, 3]
34*4882a593Smuzhiyun        default: 2
35*4882a593Smuzhiyun        description: |
36*4882a593Smuzhiyun          switching frequency must be one of following corresponding value
37*4882a593Smuzhiyun          1.1MHz, 1.65MHz, 2.2MHz, 2.75MHz
38*4882a593Smuzhiyun
39*4882a593Smuzhiyun    patternProperties:
40*4882a593Smuzhiyun      "^ldo[1-4]$":
41*4882a593Smuzhiyun        type: object
42*4882a593Smuzhiyun        $ref: regulator.yaml#
43*4882a593Smuzhiyun
44*4882a593Smuzhiyun      "^ldortc$":
45*4882a593Smuzhiyun        type: object
46*4882a593Smuzhiyun        $ref: regulator.yaml#
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun      "^buck[1-4]$":
49*4882a593Smuzhiyun        type: object
50*4882a593Smuzhiyun        $ref: regulator.yaml#
51*4882a593Smuzhiyun
52*4882a593Smuzhiyun        properties:
53*4882a593Smuzhiyun          mps,buck-softstart:
54*4882a593Smuzhiyun            $ref: "/schemas/types.yaml#/definitions/uint8"
55*4882a593Smuzhiyun            enum: [0, 1, 2, 3]
56*4882a593Smuzhiyun            description: |
57*4882a593Smuzhiyun              defines the soft start time of this buck, must be one of the following
58*4882a593Smuzhiyun              corresponding values 150us, 300us, 610us, 920us
59*4882a593Smuzhiyun
60*4882a593Smuzhiyun          mps,buck-phase-delay:
61*4882a593Smuzhiyun            $ref: "/schemas/types.yaml#/definitions/uint8"
62*4882a593Smuzhiyun            enum: [0, 1, 2, 3]
63*4882a593Smuzhiyun            description: |
64*4882a593Smuzhiyun              defines the phase delay of this buck, must be one of the following
65*4882a593Smuzhiyun              corresponding values 0deg, 90deg, 180deg, 270deg
66*4882a593Smuzhiyun
67*4882a593Smuzhiyun          mps,buck-ovp-disable:
68*4882a593Smuzhiyun            type: boolean
69*4882a593Smuzhiyun            description: |
70*4882a593Smuzhiyun              disables over voltage protection of this buck
71*4882a593Smuzhiyun
72*4882a593Smuzhiyun        unevaluatedProperties: false
73*4882a593Smuzhiyun
74*4882a593Smuzhiyun    additionalProperties: false
75*4882a593Smuzhiyun
76*4882a593Smuzhiyunrequired:
77*4882a593Smuzhiyun  - compatible
78*4882a593Smuzhiyun  - reg
79*4882a593Smuzhiyun  - regulators
80*4882a593Smuzhiyun
81*4882a593SmuzhiyunadditionalProperties: false
82*4882a593Smuzhiyun
83*4882a593Smuzhiyunexamples:
84*4882a593Smuzhiyun  - |
85*4882a593Smuzhiyun    i2c {
86*4882a593Smuzhiyun        #address-cells = <1>;
87*4882a593Smuzhiyun        #size-cells = <0>;
88*4882a593Smuzhiyun
89*4882a593Smuzhiyun        pmic@69 {
90*4882a593Smuzhiyun          compatible = "mps,mpq7920";
91*4882a593Smuzhiyun          reg = <0x69>;
92*4882a593Smuzhiyun
93*4882a593Smuzhiyun          regulators {
94*4882a593Smuzhiyun            mps,switch-freq = /bits/ 8 <1>;
95*4882a593Smuzhiyun
96*4882a593Smuzhiyun            buck1 {
97*4882a593Smuzhiyun             regulator-name = "buck1";
98*4882a593Smuzhiyun             regulator-min-microvolt = <400000>;
99*4882a593Smuzhiyun             regulator-max-microvolt = <3587500>;
100*4882a593Smuzhiyun             regulator-min-microamp  = <460000>;
101*4882a593Smuzhiyun             regulator-max-microamp  = <7600000>;
102*4882a593Smuzhiyun             regulator-boot-on;
103*4882a593Smuzhiyun             mps,buck-ovp-disable;
104*4882a593Smuzhiyun             mps,buck-phase-delay = /bits/ 8 <2>;
105*4882a593Smuzhiyun             mps,buck-softstart = /bits/ 8 <1>;
106*4882a593Smuzhiyun            };
107*4882a593Smuzhiyun
108*4882a593Smuzhiyun            ldo2 {
109*4882a593Smuzhiyun             regulator-name = "ldo2";
110*4882a593Smuzhiyun             regulator-min-microvolt = <650000>;
111*4882a593Smuzhiyun             regulator-max-microvolt = <3587500>;
112*4882a593Smuzhiyun            };
113*4882a593Smuzhiyun         };
114*4882a593Smuzhiyun       };
115*4882a593Smuzhiyun     };
116*4882a593Smuzhiyun...
117