xref: /freebsd/sys/contrib/device-tree/Bindings/regulator/mediatek,mt6316b-regulator.yaml (revision 96fb1ebd28756790597f73ad25306f58f558be97)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/mediatek,mt6316b-regulator.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: MediaTek MT6316 BP/VP SPMI PMIC Regulators
8
9maintainers:
10  - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
11
12description:
13  The MediaTek MT6316BP/VP PMICs are fully controlled by SPMI interface, both
14  feature four step-down DC/DC (buck) converters, and provides 2+2 Phases,
15  joining Buck 1+2 for the first phase, and Buck 3+4 for the second phase.
16
17properties:
18  compatible:
19    const: mediatek,mt6316b-regulator
20
21  reg:
22    maxItems: 1
23
24patternProperties:
25  "^vbuck(12|34)$":
26    type: object
27    $ref: regulator.yaml#
28    unevaluatedProperties: false
29    properties:
30      regulator-allowed-modes:
31        description: |
32          Allowed Buck regulator operating modes allowed. Valid values below.
33            0 - Normal mode with automatic power saving, reducing the switching
34                frequency when light load conditions are detected
35            1 - Forced Continuous Conduction mode (FCCM) for improved voltage
36                regulation accuracy with constant switching frequency but lower
37                regulator efficiency
38            2 - Forced Low Power mode for improved regulator efficiency, used
39                when no heavy load is expected, will shut down unnecessary IP
40                blocks and secondary phases to reduce quiescent current.
41                This mode does not limit the maximum output current but unless
42                only a light load is applied, there will be regulation accuracy
43                and efficiency losses.
44        minItems: 1
45        maxItems: 3
46        items:
47          enum: [ 0, 1, 2 ]
48
49required:
50  - compatible
51  - reg
52
53additionalProperties: false
54
55examples:
56  - |
57    #include <dt-bindings/spmi/spmi.h>
58
59    spmi {
60      #address-cells = <2>;
61      #size-cells = <0>;
62
63      pmic@8 {
64        compatible = "mediatek,mt6316b-regulator";
65        reg = <0x8 SPMI_USID>;
66
67        vbuck12 {
68          regulator-name = "dvdd_core";
69          regulator-min-microvolt = <450000>;
70          regulator-max-microvolt = <965000>;
71          regulator-allowed-modes = <0 1 2>;
72          regulator-enable-ramp-delay = <256>;
73        };
74      };
75    };
76...
77