summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/regulator/rohm,bd71828-regulator.yaml
blob: 1e52dafcb5c9a4e8080450bb64daeb08cc0d2f83 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/regulator/rohm,bd71828-regulator.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: ROHM BD71828 Power Management Integrated Circuit regulators

maintainers:
  - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>

description: |
  This module is part of the ROHM BD71828 MFD device. For more details
  see Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml.

  The regulator controller is represented as a sub-node of the PMIC node
  on the device tree.

  Regulator nodes should be named to BUCK_<number> and LDO_<number>.
  The valid names for BD71828 regulator nodes are
  BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6, BUCK7
  LDO1, LDO2, LDO3, LDO4, LDO5, LDO6, LDO7

patternProperties:
  "^LDO[1-7]$":
    type: object
    allOf:
      - $ref: regulator.yaml#
    description:
      Properties for single LDO regulator.

    properties:
      regulator-name:
        pattern: "^ldo[1-7]$"
        description:
          should be "ldo1", ..., "ldo7"

    unevaluatedProperties: false

  "^BUCK[1-7]$":
    type: object
    allOf:
      - $ref: regulator.yaml#
    description:
      Properties for single BUCK regulator.

    properties:
      regulator-name:
        pattern: "^buck[1-7]$"
        description:
          should be "buck1", ..., "buck7"

      rohm,dvs-run-voltage:
        allOf:
          - $ref: "/schemas/types.yaml#/definitions/uint32"
          - minimum: 0
            maximum: 3300000
        description:
          PMIC default "RUN" state voltage in uV. See below table for
          bucks which support this. 0 means disabled.

      rohm,dvs-idle-voltage:
        allOf:
          - $ref: "/schemas/types.yaml#/definitions/uint32"
          - minimum: 0
            maximum: 3300000
        description:
          PMIC default "IDLE" state voltage in uV. See below table for
          bucks which support this. 0 means disabled.

      rohm,dvs-suspend-voltage:
        allOf:
          - $ref: "/schemas/types.yaml#/definitions/uint32"
          - minimum: 0
            maximum: 3300000
        description:
          PMIC default "SUSPEND" state voltage in uV. See below table for
          bucks which support this. 0 means disabled.

      rohm,dvs-lpsr-voltage:
        allOf:
          - $ref: "/schemas/types.yaml#/definitions/uint32"
          - minimum: 0
            maximum: 3300000
        description:
          PMIC default "LPSR" state voltage in uV. See below table for
          bucks which support this. 0 means disabled.

        # Supported default DVS states:
        #     buck       |    run     |   idle    | suspend  | lpsr
        #--------------------------------------------------------------
        # 1, 2, 6, and 7 | supported  | supported | supported (*)
        #--------------------------------------------------------------
        # 3, 4, and 5    |                    supported (**)
        #--------------------------------------------------------------
        #
        #(*)  LPSR and SUSPEND states use same voltage but both states have own
        #     enable /
        #     disable settings. Voltage 0 can be specified for a state to make
        #     regulator disabled on that state.
        #
        #(**) All states use same voltage but have own enable / disable
        #     settings. Voltage 0 can be specified for a state to make
        #     regulator disabled on that state.

    required:
      - regulator-name

    unevaluatedProperties: false

additionalProperties: false