xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/regulator/rohm,bd71847-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,bd71847-regulator.yaml#
5*4882a593Smuzhiyun$schema: http://devicetree.org/meta-schemas/core.yaml#
6*4882a593Smuzhiyun
7*4882a593Smuzhiyuntitle: ROHM BD71847 and BD71850 Power Management Integrated Circuit regulators
8*4882a593Smuzhiyun
9*4882a593Smuzhiyunmaintainers:
10*4882a593Smuzhiyun  - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
11*4882a593Smuzhiyun
12*4882a593Smuzhiyundescription: |
13*4882a593Smuzhiyun  List of regulators provided by this controller. BD71847 regulators node
14*4882a593Smuzhiyun  should be sub node of the BD71847 MFD node. See BD71847 MFD bindings at
15*4882a593Smuzhiyun  Documentation/devicetree/bindings/mfd/rohm,bd71847-pmic.yaml
16*4882a593Smuzhiyun  Regulator nodes should be named to BUCK_<number> and LDO_<number>. The
17*4882a593Smuzhiyun  definition for each of these nodes is defined using the standard
18*4882a593Smuzhiyun  binding for regulators at
19*4882a593Smuzhiyun  Documentation/devicetree/bindings/regulator/regulator.txt.
20*4882a593Smuzhiyun  Note that if BD71847 starts at RUN state you probably want to use
21*4882a593Smuzhiyun  regulator-boot-on at least for BUCK5. LDO6 is supplied by it and it must
22*4882a593Smuzhiyun  not be disabled by driver at startup. If BUCK5 is disabled at startup the
23*4882a593Smuzhiyun  voltage monitoring for LDO5/LDO6 can cause PMIC to reset.
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun#The valid names for BD71847 regulator nodes are:
26*4882a593Smuzhiyun#BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6
27*4882a593Smuzhiyun#LDO1, LDO2, LDO3, LDO4, LDO5, LDO6
28*4882a593Smuzhiyun
29*4882a593SmuzhiyunpatternProperties:
30*4882a593Smuzhiyun  "^LDO[1-6]$":
31*4882a593Smuzhiyun    type: object
32*4882a593Smuzhiyun    $ref: regulator.yaml#
33*4882a593Smuzhiyun    description:
34*4882a593Smuzhiyun      Properties for single LDO regulator.
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun    properties:
37*4882a593Smuzhiyun      regulator-name:
38*4882a593Smuzhiyun        pattern: "^ldo[1-6]$"
39*4882a593Smuzhiyun        description:
40*4882a593Smuzhiyun          should be "ldo1", ..., "ldo6"
41*4882a593Smuzhiyun
42*4882a593Smuzhiyun    unevaluatedProperties: false
43*4882a593Smuzhiyun
44*4882a593Smuzhiyun  "^BUCK[1-6]$":
45*4882a593Smuzhiyun    type: object
46*4882a593Smuzhiyun    $ref: regulator.yaml#
47*4882a593Smuzhiyun    description:
48*4882a593Smuzhiyun      Properties for single BUCK regulator.
49*4882a593Smuzhiyun
50*4882a593Smuzhiyun    properties:
51*4882a593Smuzhiyun      regulator-name:
52*4882a593Smuzhiyun        pattern: "^buck[1-6]$"
53*4882a593Smuzhiyun        description:
54*4882a593Smuzhiyun          should be "buck1", ..., "buck6"
55*4882a593Smuzhiyun
56*4882a593Smuzhiyun      rohm,dvs-run-voltage:
57*4882a593Smuzhiyun        $ref: "/schemas/types.yaml#/definitions/uint32"
58*4882a593Smuzhiyun        minimum: 0
59*4882a593Smuzhiyun        maximum: 1300000
60*4882a593Smuzhiyun        description:
61*4882a593Smuzhiyun          PMIC default "RUN" state voltage in uV. See below table for
62*4882a593Smuzhiyun          bucks which support this. 0 means disabled.
63*4882a593Smuzhiyun
64*4882a593Smuzhiyun      rohm,dvs-idle-voltage:
65*4882a593Smuzhiyun        $ref: "/schemas/types.yaml#/definitions/uint32"
66*4882a593Smuzhiyun        minimum: 0
67*4882a593Smuzhiyun        maximum: 1300000
68*4882a593Smuzhiyun        description:
69*4882a593Smuzhiyun          PMIC default "IDLE" state voltage in uV. See below table for
70*4882a593Smuzhiyun          bucks which support this. 0 means disabled.
71*4882a593Smuzhiyun
72*4882a593Smuzhiyun      rohm,dvs-suspend-voltage:
73*4882a593Smuzhiyun        $ref: "/schemas/types.yaml#/definitions/uint32"
74*4882a593Smuzhiyun        minimum: 0
75*4882a593Smuzhiyun        maximum: 1300000
76*4882a593Smuzhiyun        description:
77*4882a593Smuzhiyun          PMIC default "SUSPEND" state voltage in uV. See below table for
78*4882a593Smuzhiyun          bucks which support this. 0 means disabled.
79*4882a593Smuzhiyun
80*4882a593Smuzhiyun        # Supported default DVS states:
81*4882a593Smuzhiyun        #
82*4882a593Smuzhiyun        # BD71847:
83*4882a593Smuzhiyun        # buck | dvs-run-voltage | dvs-idle-voltage | dvs-suspend-voltage
84*4882a593Smuzhiyun        # ----------------------------------------------------------------
85*4882a593Smuzhiyun        # 1    | supported       | supported        | supported
86*4882a593Smuzhiyun        # ----------------------------------------------------------------
87*4882a593Smuzhiyun        # 2    | supported       | supported        | not supported
88*4882a593Smuzhiyun        # ----------------------------------------------------------------
89*4882a593Smuzhiyun        # rest | not supported   | not supported    | not supported
90*4882a593Smuzhiyun
91*4882a593Smuzhiyun      # BD718(47/50) power outputs can either be controlled by the PMIC internal
92*4882a593Smuzhiyun      # hardware state machine or by software. If you need regulators to be
93*4882a593Smuzhiyun      # turned ON/OFF for example based on PMIC_STBY_REQ line (which toggles
94*4882a593Smuzhiyun      # PMIC HW state machine) - then you should set this property.
95*4882a593Smuzhiyun      # Tradeoff is that then SW can't control the ON/OFF state for this
96*4882a593Smuzhiyun      # regulator (other than invoking a PMIC state change).
97*4882a593Smuzhiyun      rohm,no-regulator-enable-control:
98*4882a593Smuzhiyun        description: |
99*4882a593Smuzhiyun          Enable/Disable control of this regulator must be left to the
100*4882a593Smuzhiyun          PMIC hardware state machine.
101*4882a593Smuzhiyun        type: boolean
102*4882a593Smuzhiyun    required:
103*4882a593Smuzhiyun      - regulator-name
104*4882a593Smuzhiyun
105*4882a593Smuzhiyun    unevaluatedProperties: false
106*4882a593Smuzhiyun
107*4882a593SmuzhiyunadditionalProperties: false
108