Skip to content

Commit d40c874

Browse files
committed
Merge tag 'regulator-v6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator
Pull regulator updates from Mark Brown: "The core work this time around has mostly been around the code to manage regulator modes, simplifying the interface for configuring modes to not take account of the voltage and as a side effect resolving a bootstrapping issue on systems where we can't read the voltage from the regulator. Otherwise it's been quite a quiet release with some new drivers and a devm helper: - Make the load handling in the Qualcomm RPMH regulators much more idiomatic and general cleanups to the handling of load configuration - devm helper for a combined get and enable operation - Support for MediaTek MT6331, Qualcomm PM660, 660L and PM6125, Texas Instruments TPS65219" * tag 'regulator-v6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (45 commits) dt-bindings: gpio-regulator: add vin-supply property support regulator: gpio: Add input_supply support in gpio_regulator_config regulator: tps65219: Fix is_enabled checking in tps65219_set_bypass regulator: qcom,rpmh: add pm660 and pm660l pmics regulator: qcom-rpmh: add pm660 and pm660l pmics regulator: of: Fix kernel-doc regulator: of: Fix kernel-doc regulator: Add driver for MT6332 PMIC regulators regulator: Add bindings for MT6332 regulator regulator: Add driver for MT6331 PMIC regulators regulator: Add bindings for MT6331 regulator regulator: tps65219: Fix .bypass_val_on setting regulator: qcom_rpm: Fix circular deferral regression regulator: core: Prevent integer underflow regulator: dt-bindings: qcom,rpmh: Indicate regulator-allow-set-load dependencies regulator: bd9576: switch to using devm_fwnode_gpiod_get() regulator: bd71815: switch to using devm_fwnode_gpiod_get() regulator: core: Fix regulator supply registration with sysfs regulator: tps65219: change tps65219_regulator_irq_types to static regulator: core: Don't err if allow-set-load but no allowed-modes ...
2 parents 521d04e + 392cc0a commit d40c874

37 files changed

+2990
-358
lines changed

Documentation/devicetree/bindings/regulator/dlg,da9121.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ properties:
8383
8484
regulators:
8585
type: object
86+
additionalProperties: false
8687
description: |
8788
List of regulators provided by the device
8889

Documentation/devicetree/bindings/regulator/gpio-regulator.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,9 @@ properties:
8585
- current
8686
default: voltage
8787

88+
vin-supply:
89+
description: Input supply phandle.
90+
8891
required:
8992
- compatible
9093
- regulator-name

Documentation/devicetree/bindings/regulator/maxim,max77802.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ patternProperties:
7979
patternProperties:
8080
regulator-state-(standby|mem|disk):
8181
type: object
82+
additionalProperties: true
8283
properties:
8384
regulator-mode: false
8485

Documentation/devicetree/bindings/regulator/maxim,max8997.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ properties:
111111

112112
regulators:
113113
type: object
114+
additionalProperties: false
114115
description:
115116
List of child nodes that specify the regulators.
116117

Lines changed: 273 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,273 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/regulator/mediatek,mt6331-regulator.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: MT6331 Regulator from MediaTek Integrated
8+
9+
maintainers:
10+
- AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
11+
12+
description: |
13+
The MT6331 PMIC provides 6 BUCK and 21 LDO (Low Dropout) regulators
14+
and nodes are named according to the regulator type:
15+
buck-<name> and ldo-<name>.
16+
MT6331 regulators node should be sub node of the MT6397 MFD node.
17+
18+
patternProperties:
19+
"^buck-v(core2|io18|dvfs11|dvfs12|dvfs13|dvfs14)$":
20+
type: object
21+
$ref: "regulator.yaml#"
22+
23+
properties:
24+
regulator-name:
25+
pattern: "^v(core2|io18|dvfs11|dvfs12|dvfs13|dvfs14)$"
26+
27+
unevaluatedProperties: false
28+
29+
"^ldo-v(avdd32aud|auxa32)$":
30+
type: object
31+
$ref: "regulator.yaml#"
32+
33+
properties:
34+
regulator-name:
35+
pattern: "^v(avdd32aud|auxa32)$"
36+
37+
unevaluatedProperties: false
38+
39+
"^ldo-v(dig18|emc33|ibr|mc|mch|mipi|rtc|sram|usb10)$":
40+
type: object
41+
$ref: "regulator.yaml#"
42+
43+
properties:
44+
regulator-name:
45+
pattern: "^v(dig18|emc33|ibr|mc|mch|mipi|rtc|sram|usb10)$"
46+
47+
unevaluatedProperties: false
48+
49+
"^ldo-vcam(a|af|d|io)$":
50+
type: object
51+
$ref: "regulator.yaml#"
52+
53+
properties:
54+
regulator-name:
55+
pattern: "^vcam(a|af|d|io)$"
56+
57+
unevaluatedProperties: false
58+
59+
"^ldo-vtcxo[12]$":
60+
type: object
61+
$ref: "regulator.yaml#"
62+
63+
properties:
64+
regulator-name:
65+
pattern: "^vtcxo[12]$"
66+
67+
required:
68+
- regulator-name
69+
70+
unevaluatedProperties: false
71+
72+
"^ldo-vgp[1234]$":
73+
type: object
74+
$ref: "regulator.yaml#"
75+
76+
properties:
77+
regulator-name:
78+
pattern: "^vgp[12]$"
79+
80+
required:
81+
- regulator-name
82+
83+
unevaluatedProperties: false
84+
85+
additionalProperties: false
86+
87+
examples:
88+
- |
89+
pmic {
90+
regulators {
91+
mt6331_vdvfs11_reg: buck-vdvfs11 {
92+
regulator-name = "vdvfs11";
93+
regulator-min-microvolt = <700000>;
94+
regulator-max-microvolt = <1493750>;
95+
regulator-ramp-delay = <12500>;
96+
regulator-enable-ramp-delay = <1>;
97+
regulator-allowed-modes = <0 1>;
98+
};
99+
mt6331_vdvfs12_reg: buck-vdvfs12 {
100+
regulator-name = "vdvfs12";
101+
regulator-min-microvolt = <700000>;
102+
regulator-max-microvolt = <1493750>;
103+
regulator-ramp-delay = <12500>;
104+
regulator-enable-ramp-delay = <1>;
105+
regulator-allowed-modes = <0 1>;
106+
};
107+
mt6331_vdvfs13_reg: buck-vdvfs13 {
108+
regulator-name = "vdvfs13";
109+
regulator-min-microvolt = <700000>;
110+
regulator-max-microvolt = <1493750>;
111+
regulator-ramp-delay = <12500>;
112+
regulator-enable-ramp-delay = <1>;
113+
regulator-allowed-modes = <0 1>;
114+
};
115+
mt6331_vdvfs14_reg: buck-vdvfs14 {
116+
regulator-name = "vdvfs14";
117+
regulator-min-microvolt = <700000>;
118+
regulator-max-microvolt = <1493750>;
119+
regulator-ramp-delay = <12500>;
120+
regulator-enable-ramp-delay = <1>;
121+
regulator-allowed-modes = <0 1>;
122+
};
123+
mt6331_vcore2_reg: buck-vcore2 {
124+
regulator-name = "vcore2";
125+
regulator-min-microvolt = <700000>;
126+
regulator-max-microvolt = <1493750>;
127+
regulator-ramp-delay = <12500>;
128+
regulator-enable-ramp-delay = <1>;
129+
regulator-allowed-modes = <0 1>;
130+
};
131+
mt6331_vio18_reg: buck-vio18 {
132+
regulator-name = "vio18";
133+
regulator-min-microvolt = <1800000>;
134+
regulator-max-microvolt = <1800000>;
135+
regulator-ramp-delay = <12500>;
136+
regulator-enable-ramp-delay = <0>;
137+
regulator-allowed-modes = <0 1>;
138+
};
139+
mt6331_vtcxo1_reg: ldo-vtcxo1 {
140+
regulator-name = "vtcxo1";
141+
regulator-min-microvolt = <2800000>;
142+
regulator-max-microvolt = <2800000>;
143+
regulator-always-on;
144+
regulator-boot-on;
145+
};
146+
mt6331_vtcxo2_reg: ldo-vtcxo2 {
147+
regulator-name = "vtcxo2";
148+
regulator-min-microvolt = <2800000>;
149+
regulator-max-microvolt = <2800000>;
150+
regulator-always-on;
151+
regulator-boot-on;
152+
};
153+
mt6331_avdd32_aud_reg: ldo-avdd32aud {
154+
regulator-name = "avdd32_aud";
155+
regulator-min-microvolt = <2800000>;
156+
regulator-max-microvolt = <3200000>;
157+
};
158+
mt6331_vauxa32_reg: ldo-vauxa32 {
159+
regulator-name = "vauxa32";
160+
regulator-min-microvolt = <2800000>;
161+
regulator-max-microvolt = <3200000>;
162+
};
163+
mt6331_vcama_reg: ldo-vcama {
164+
regulator-name = "vcama";
165+
regulator-min-microvolt = <1500000>;
166+
regulator-max-microvolt = <2800000>;
167+
regulator-always-on;
168+
};
169+
mt6331_vio28_reg: ldo-vio28 {
170+
regulator-name = "vio28";
171+
regulator-min-microvolt = <2800000>;
172+
regulator-max-microvolt = <2800000>;
173+
regulator-always-on;
174+
regulator-boot-on;
175+
};
176+
mt6331_vcamaf_reg: ldo-vcamaf {
177+
regulator-name = "vcam_af";
178+
regulator-min-microvolt = <1200000>;
179+
regulator-max-microvolt = <3300000>;
180+
};
181+
mt6331_vmc_reg: ldo-vmc {
182+
regulator-name = "vmc";
183+
regulator-min-microvolt = <1800000>;
184+
regulator-max-microvolt = <3300000>;
185+
};
186+
mt6331_vmch_reg: ldo-vmch {
187+
regulator-name = "vmch";
188+
regulator-min-microvolt = <3000000>;
189+
regulator-max-microvolt = <3300000>;
190+
};
191+
mt6331_vemc33_reg: ldo-vemc33 {
192+
regulator-name = "vemc33";
193+
regulator-min-microvolt = <3300000>;
194+
regulator-max-microvolt = <3300000>;
195+
};
196+
mt6331_vgp1_reg: ldo-vgp1 {
197+
regulator-name = "vgp1";
198+
regulator-min-microvolt = <1200000>;
199+
regulator-max-microvolt = <3300000>;
200+
};
201+
mt6331_vsim1_reg: ldo-vsim1 {
202+
regulator-name = "vsim1";
203+
regulator-min-microvolt = <1700000>;
204+
regulator-max-microvolt = <3100000>;
205+
};
206+
mt6331_vsim2_reg: ldo-vsim2 {
207+
regulator-name = "vsim2";
208+
regulator-min-microvolt = <1700000>;
209+
regulator-max-microvolt = <3100000>;
210+
};
211+
mt6331_vmipi_reg: ldo-vmipi {
212+
regulator-name = "vmipi";
213+
regulator-min-microvolt = <1200000>;
214+
regulator-max-microvolt = <3300000>;
215+
};
216+
mt6331_vibr_reg: ldo-vibr {
217+
regulator-name = "vibr";
218+
regulator-min-microvolt = <1200000>;
219+
regulator-max-microvolt = <3300000>;
220+
};
221+
mt6331_vgp4_reg: ldo-vgp4 {
222+
regulator-name = "vgp4";
223+
regulator-min-microvolt = <1600000>;
224+
regulator-max-microvolt = <2200000>;
225+
};
226+
mt6331_vcamd_reg: ldo-vcamd {
227+
regulator-name = "vcamd";
228+
regulator-min-microvolt = <900000>;
229+
regulator-max-microvolt = <1500000>;
230+
};
231+
mt6331_vusb10_reg: ldo-vusb10 {
232+
regulator-name = "vusb";
233+
regulator-min-microvolt = <1000000>;
234+
regulator-max-microvolt = <1300000>;
235+
regulator-boot-on;
236+
};
237+
mt6331_vcamio_reg: ldo-vcamio {
238+
regulator-name = "vcam_io";
239+
regulator-min-microvolt = <1200000>;
240+
regulator-max-microvolt = <1800000>;
241+
};
242+
mt6331_vsram_reg: ldo-vsram {
243+
regulator-name = "vsram";
244+
regulator-min-microvolt = <1012500>;
245+
regulator-max-microvolt = <1012500>;
246+
regulator-always-on;
247+
regulator-boot-on;
248+
};
249+
mt6331_vgp2_reg: ldo-vgp2 {
250+
regulator-name = "vgp2";
251+
regulator-min-microvolt = <1100000>;
252+
regulator-max-microvolt = <1500000>;
253+
regulator-boot-on;
254+
};
255+
mt6331_vgp3_reg: ldo-vgp3 {
256+
regulator-name = "vgp3";
257+
regulator-min-microvolt = <1200000>;
258+
regulator-max-microvolt = <1800000>;
259+
};
260+
mt6331_vrtc_reg: ldo-vrtc {
261+
regulator-name = "vrtc";
262+
regulator-min-microvolt = <2800000>;
263+
regulator-max-microvolt = <2800000>;
264+
regulator-always-on;
265+
};
266+
mt6331_vdig18_reg: ldo-vdig18 {
267+
regulator-name = "dvdd18_dig";
268+
regulator-min-microvolt = <1800000>;
269+
regulator-max-microvolt = <1800000>;
270+
};
271+
};
272+
};
273+
...

0 commit comments

Comments
 (0)