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