xref: /linux/Documentation/devicetree/bindings/regulator/adi,max77675.yaml (revision c17ee635fd3a482b2ad2bf5e269755c2eae5f25e)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/adi,max77675.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Maxim MAX77675 PMIC Regulator
8
9maintainers:
10  - Joan Na <joan.na@analog.com>
11
12description:
13  The MAX77675 is a Power Management IC providing four switching buck
14  regulators (SBB0SBB3) accessible via I2C. It supports configuration
15  of output voltages and enable controls for each regulator.
16
17allOf:
18  - $ref: /schemas/input/input.yaml
19  - $ref: /schemas/pinctrl/pincfg-node.yaml
20
21properties:
22  compatible:
23    const: adi,max77675
24
25  reg:
26    maxItems: 1
27
28  reset-time-sec:
29    description: Manual reset time in seconds
30    enum: [4, 8, 12, 16]
31    default: 4
32
33  bias-disable:
34    type: boolean
35    description: Disable internal pull-up for EN pin
36
37  input-debounce:
38    description: Debounce time for the enable pin, in microseconds
39    items:
40      - enum: [100, 30000]
41    default: 100
42
43  adi,en-mode:
44    description: |
45      Enable mode configuration.
46      The debounce time set by 'input-debounce' applies to
47      both push-button and slide-switch modes.
48      "push-button"  - A long press triggers power-on or power-down
49      "slide-switch" - Low : powers on, High : powers down
50      "logic"        - Low : powers on, High : powers down (no debounce time)
51    $ref: /schemas/types.yaml#/definitions/string
52    enum: [push-button, slide-switch, logic]
53    default: slide-switch
54
55  adi,voltage-change-latency-us:
56    description:
57      Specifies the delay (in microseconds) between an output voltage change
58      request and the start of the SBB voltage ramp.
59    enum: [10, 100]
60    default: 100
61
62  adi,drv-sbb-strength:
63    description: |
64      SIMO Buck-Boost Drive Strength Trim.
65      Controls the drive strength of the SIMO regulator's power MOSFETs.
66      This setting affects switching speed, impacting power efficiency and EMI.
67      "max"  – Maximum drive strength (~0.6 ns transition time)
68      "high" – High drive strength (~1.2 ns transition time)
69      "low"  – Low drive strength (~1.8 ns transition time)
70      "min"  – Minimum drive strength (~8 ns transition time)
71    $ref: /schemas/types.yaml#/definitions/string
72    enum: [max, high, low, min]
73    default: max
74
75  adi,dvs-slew-rate-mv-per-us:
76    description:
77      Dynamic rising slew rate for output voltage transitions, in mVs.
78      This setting is only used when 'adi,fixed-slew-rate' is not present.
79    enum: [5, 10]
80    default: 5
81
82  adi,bias-low-power-request:
83    type: boolean
84    description: Request low-power bias mode
85
86  adi,simo-ldo-always-on:
87    type: boolean
88    description: Set internal LDO to always supply 1.8V
89
90  regulators:
91    type: object
92    description: Regulator child nodes
93    patternProperties:
94      "^sbb[0-3]$":
95        type: object
96        $ref: regulator.yaml#
97        properties:
98          adi,fps-slot:
99            description: |
100              FPS (Flexible Power Sequencer) slot selection.
101              The Flexible Power Sequencer allows resources to power up under
102              hardware or software control. Additionally, each resource can
103              power up independently or among a group of other regulators with
104              adjustable power-up and power-down slots.
105              "slot0"   - Assign to FPS Slot 0
106              "slot1"   - Assign to FPS Slot 1
107              "slot2"   - Assign to FPS Slot 2
108              "slot3"   - Assign to FPS Slot 3
109              "default" - Use the default FPS slot value stored in register
110            $ref: /schemas/types.yaml#/definitions/string
111            enum: [slot0, slot1, slot2, slot3, default]
112            default: default
113
114          adi,fixed-slew-rate:
115            type: boolean
116            description:
117              When this property is present, the device uses a constant 2 mVs
118              slew rate and ignores any dynamic slew rate configuration.
119              When absent, the device uses the dynamic slew rate specified
120              by 'adi,dvs-slew-rate-mv-per-us'
121
122        unevaluatedProperties: false
123
124required:
125  - compatible
126  - reg
127  - regulators
128
129additionalProperties: false
130
131examples:
132  - |
133    i2c {
134      #address-cells = <1>;
135      #size-cells = <0>;
136
137      max77675: pmic@44 {
138        compatible = "adi,max77675";
139        reg = <0x44>;
140
141        reset-time-sec = <4>;
142        input-debounce = <100>;
143
144        adi,en-mode = "slide-switch";
145        adi,voltage-change-latency-us = <100>;
146        adi,drv-sbb-strength = "max";
147        adi,dvs-slew-rate-mv-per-us = <5>;
148
149        regulators {
150          sbb0: sbb0 {
151            regulator-name = "sbb0";
152            regulator-min-microvolt = <500000>;
153            regulator-max-microvolt = <5500000>;
154            adi,fps-slot = "default";
155            adi,fixed-slew-rate;
156          };
157
158          sbb1: sbb1 {
159            regulator-name = "sbb1";
160            regulator-min-microvolt = <500000>;
161            regulator-max-microvolt = <5500000>;
162            adi,fps-slot = "default";
163            adi,fixed-slew-rate;
164          };
165
166          sbb2: sbb2 {
167            regulator-name = "sbb2";
168            regulator-min-microvolt = <500000>;
169            regulator-max-microvolt = <5500000>;
170            adi,fps-slot = "default";
171            adi,fixed-slew-rate;
172          };
173
174          sbb3: sbb3 {
175            regulator-name = "sbb3";
176            regulator-min-microvolt = <500000>;
177            regulator-max-microvolt = <5500000>;
178            adi,fps-slot = "default";
179            adi,fixed-slew-rate;
180          };
181        };
182      };
183    };
184
185