xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/regulator/rohm,bd71828-regulator.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/rohm,bd71828-regulator.yaml#
5*4882a593Smuzhiyun$schema: http://devicetree.org/meta-schemas/core.yaml#
6*4882a593Smuzhiyun
7*4882a593Smuzhiyuntitle: ROHM BD71828 Power Management Integrated Circuit regulators
8*4882a593Smuzhiyun
9*4882a593Smuzhiyunmaintainers:
10*4882a593Smuzhiyun  - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
11*4882a593Smuzhiyun
12*4882a593Smuzhiyundescription: |
13*4882a593Smuzhiyun  This module is part of the ROHM BD71828 MFD device. For more details
14*4882a593Smuzhiyun  see Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml.
15*4882a593Smuzhiyun
16*4882a593Smuzhiyun  The regulator controller is represented as a sub-node of the PMIC node
17*4882a593Smuzhiyun  on the device tree.
18*4882a593Smuzhiyun
19*4882a593Smuzhiyun  Regulator nodes should be named to BUCK_<number> and LDO_<number>.
20*4882a593Smuzhiyun  The valid names for BD71828 regulator nodes are
21*4882a593Smuzhiyun  BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6, BUCK7
22*4882a593Smuzhiyun  LDO1, LDO2, LDO3, LDO4, LDO5, LDO6, LDO7
23*4882a593Smuzhiyun
24*4882a593SmuzhiyunpatternProperties:
25*4882a593Smuzhiyun  "^LDO[1-7]$":
26*4882a593Smuzhiyun    type: object
27*4882a593Smuzhiyun    description:
28*4882a593Smuzhiyun      Properties for single LDO regulator.
29*4882a593Smuzhiyun    $ref: regulator.yaml#
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun    properties:
32*4882a593Smuzhiyun      regulator-name:
33*4882a593Smuzhiyun        pattern: "^ldo[1-7]$"
34*4882a593Smuzhiyun        description:
35*4882a593Smuzhiyun          should be "ldo1", ..., "ldo7"
36*4882a593Smuzhiyun
37*4882a593Smuzhiyun    unevaluatedProperties: false
38*4882a593Smuzhiyun
39*4882a593Smuzhiyun  "^BUCK[1-7]$":
40*4882a593Smuzhiyun    type: object
41*4882a593Smuzhiyun    description:
42*4882a593Smuzhiyun      Properties for single BUCK regulator.
43*4882a593Smuzhiyun    $ref: regulator.yaml#
44*4882a593Smuzhiyun
45*4882a593Smuzhiyun    properties:
46*4882a593Smuzhiyun      regulator-name:
47*4882a593Smuzhiyun        pattern: "^buck[1-7]$"
48*4882a593Smuzhiyun        description:
49*4882a593Smuzhiyun          should be "buck1", ..., "buck7"
50*4882a593Smuzhiyun
51*4882a593Smuzhiyun      rohm,dvs-run-voltage:
52*4882a593Smuzhiyun        description:
53*4882a593Smuzhiyun          PMIC default "RUN" state voltage in uV. See below table for
54*4882a593Smuzhiyun          bucks which support this. 0 means disabled.
55*4882a593Smuzhiyun        $ref: "/schemas/types.yaml#/definitions/uint32"
56*4882a593Smuzhiyun        minimum: 0
57*4882a593Smuzhiyun        maximum: 3300000
58*4882a593Smuzhiyun
59*4882a593Smuzhiyun      rohm,dvs-idle-voltage:
60*4882a593Smuzhiyun        description:
61*4882a593Smuzhiyun          PMIC default "IDLE" state voltage in uV. See below table for
62*4882a593Smuzhiyun          bucks which support this. 0 means disabled.
63*4882a593Smuzhiyun        $ref: "/schemas/types.yaml#/definitions/uint32"
64*4882a593Smuzhiyun        minimum: 0
65*4882a593Smuzhiyun        maximum: 3300000
66*4882a593Smuzhiyun
67*4882a593Smuzhiyun      rohm,dvs-suspend-voltage:
68*4882a593Smuzhiyun        description:
69*4882a593Smuzhiyun          PMIC default "SUSPEND" state voltage in uV. See below table for
70*4882a593Smuzhiyun          bucks which support this. 0 means disabled.
71*4882a593Smuzhiyun        $ref: "/schemas/types.yaml#/definitions/uint32"
72*4882a593Smuzhiyun        minimum: 0
73*4882a593Smuzhiyun        maximum: 3300000
74*4882a593Smuzhiyun
75*4882a593Smuzhiyun      rohm,dvs-lpsr-voltage:
76*4882a593Smuzhiyun        description:
77*4882a593Smuzhiyun          PMIC default "LPSR" state voltage in uV. See below table for
78*4882a593Smuzhiyun          bucks which support this. 0 means disabled.
79*4882a593Smuzhiyun        $ref: "/schemas/types.yaml#/definitions/uint32"
80*4882a593Smuzhiyun        minimum: 0
81*4882a593Smuzhiyun        maximum: 3300000
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun        # Supported default DVS states:
84*4882a593Smuzhiyun        #     buck       |    run     |   idle    | suspend  | lpsr
85*4882a593Smuzhiyun        #--------------------------------------------------------------
86*4882a593Smuzhiyun        # 1, 2, 6, and 7 | supported  | supported | supported (*)
87*4882a593Smuzhiyun        #--------------------------------------------------------------
88*4882a593Smuzhiyun        # 3, 4, and 5    |                    supported (**)
89*4882a593Smuzhiyun        #--------------------------------------------------------------
90*4882a593Smuzhiyun        #
91*4882a593Smuzhiyun        #(*)  LPSR and SUSPEND states use same voltage but both states have own
92*4882a593Smuzhiyun        #     enable /
93*4882a593Smuzhiyun        #     disable settings. Voltage 0 can be specified for a state to make
94*4882a593Smuzhiyun        #     regulator disabled on that state.
95*4882a593Smuzhiyun        #
96*4882a593Smuzhiyun        #(**) All states use same voltage but have own enable / disable
97*4882a593Smuzhiyun        #     settings. Voltage 0 can be specified for a state to make
98*4882a593Smuzhiyun        #     regulator disabled on that state.
99*4882a593Smuzhiyun
100*4882a593Smuzhiyun    required:
101*4882a593Smuzhiyun      - regulator-name
102*4882a593Smuzhiyun
103*4882a593Smuzhiyun    unevaluatedProperties: false
104*4882a593Smuzhiyun
105*4882a593SmuzhiyunadditionalProperties: false
106