Skip to content

Commit 6097d55

Browse files
committed
Merge tag 'regulator-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator
Pull regulator updates from Mark Brown: "A quiet regulator API release, a few new drivers and some fixes but nothing too notable. There will also be some updates for the PWM regulator coming through the PWM tree which provide much smoother operation when taking over an already running PWM regulator after boot using some new PWM APIs. Summary: - Support for configuration of the initial suspend state from DT. - New drivers for Mediatek MT6323, Ricoh RN5T567 and X-Powers AXP809" * tag 'regulator-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (38 commits) regulator: da9053/52: Fix incorrectly stated minimum and maximum voltage limits regulator: mt6323: Constify struct regulator_ops regulator: mt6323: Fix module description regulator: mt6323: Add support for MT6323 regulator regulator: Add document for MT6323 regulator regulator: da9210: addition of device tree support regulator: act8865: Fix missing of_node_put() in act8865_pdata_from_dt() regulator: qcom_smd: Avoid overlapping linear voltage ranges regulator: s2mps11: Fix the voltage linear range for s2mps15 regulator: pwm: Fix regulator ramp delay for continuous mode regulator: da9211: add descriptions for da9212/da9214 mfd: rn5t618: Register restart handler mfd: rn5t618: Register power off callback optionally regulator: rn5t618: Add RN5T567 PMIC support mfd: rn5t618: Add Ricoh RN5T567 PMIC support ARM: dts: meson: minix-neo-x8: define PMIC as power controller regulator: tps65218: force set power-up/down strobe to 3 for dcdc3 regulator: tps65218: Enable suspend configuration regulator: tps65217: Enable suspend configuration regulator: qcom_spmi: Add support for get_mode/set_mode on switches ...
2 parents ae97999 + a485f5f commit 6097d55

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+1357
-215
lines changed

Documentation/devicetree/bindings/mfd/axp20x.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,11 @@ Optional properties:
2222
AXP152/20X: range: 750-1875, Default: 1.5 MHz
2323
AXP22X/80X: range: 1800-4050, Default: 3 MHz
2424

25+
- x-powers,drive-vbus-en: axp221 / axp223 only boolean, set this when the
26+
N_VBUSEN pin is used as an output pin to control an external
27+
regulator to drive the OTG VBus, rather then as an input pin
28+
which signals whether the board is driving OTG VBus or not.
29+
2530
- <input>-supply: a phandle to the regulator supply node. May be omitted if
2631
inputs are unregulated, such as using the IPSOUT output
2732
from the PMIC.
@@ -79,6 +84,7 @@ ELDO3 : LDO : eldoin-supply : shared supply
7984
LDO_IO0 : LDO : ips-supply : GPIO 0
8085
LDO_IO1 : LDO : ips-supply : GPIO 1
8186
RTC_LDO : LDO : ips-supply : always on
87+
DRIVEVBUS : Enable output : drivevbus-supply : external regulator
8288

8389
AXP809 regulators, type, and corresponding input supply names:
8490

Documentation/devicetree/bindings/mfd/rn5t618.txt

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,21 @@
1-
* Ricoh RN5T618 PMIC
1+
* Ricoh RN5T567/RN5T618 PMIC
22

3-
Ricoh RN5T618 is a power management IC which integrates 3 step-down
4-
DCDC converters, 7 low-dropout regulators, a Li-ion battery charger,
5-
fuel gauge, ADC, GPIOs and a watchdog timer. It can be controlled
6-
through a I2C interface.
3+
Ricoh RN5T567/RN5T618 is a power management IC family which integrates
4+
3 to 4 step-down DCDC converters, 7 low-dropout regulators, GPIOs and
5+
a watchdog timer. The RN5T618 provides additionally a Li-ion battery
6+
charger, fuel gauge and an ADC. It can be controlled through an I2C
7+
interface.
78

89
Required properties:
9-
- compatible: should be "ricoh,rn5t618"
10+
- compatible: must be one of
11+
"ricoh,rn5t567"
12+
"ricoh,rn5t618"
1013
- reg: the I2C slave address of the device
1114

1215
Sub-nodes:
1316
- regulators: the node is required if the regulator functionality is
14-
needed. The valid regulator names are: DCDC1, DCDC2, DCDC3, LDO1,
15-
LDO2, LDO3, LDO4, LDO5, LDORTC1 and LDORTC2.
17+
needed. The valid regulator names are: DCDC1, DCDC2, DCDC3, DCDC4
18+
(RN5T567), LDO1, LDO2, LDO3, LDO4, LDO5, LDORTC1 and LDORTC2.
1619
The common bindings for each individual regulator can be found in:
1720
Documentation/devicetree/bindings/regulator/regulator.txt
1821

Documentation/devicetree/bindings/regulator/da9210.txt

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
* Dialog Semiconductor DA9210 Voltage Regulator
1+
* Dialog Semiconductor DA9210 Multi-phase 12A DCDC BUCK Converter
22

33
Required properties:
44

@@ -18,8 +18,12 @@ Example:
1818
compatible = "dlg,da9210";
1919
reg = <0x68>;
2020

21-
regulator-min-microvolt = <900000>;
22-
regulator-max-microvolt = <1000000>;
21+
interrupt-parent = <...>;
22+
interrupts = <...>;
23+
24+
regulator-min-microvolt = <300000>;
25+
regulator-max-microvolt = <1570000>;
26+
regulator-min-microamp = <1600000>;
27+
regulator-max-microamp = <4600000>;
2328
regulator-boot-on;
24-
regulator-always-on;
2529
};

Documentation/devicetree/bindings/regulator/da9211.txt

Lines changed: 42 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
* Dialog Semiconductor DA9211/DA9213/DA9215 Voltage Regulator
1+
* Dialog Semiconductor DA9211/DA9212/DA9213/DA9214/DA9215 Voltage Regulator
22

33
Required properties:
4-
- compatible: "dlg,da9211" or "dlg,da9213" or "dlg,da9215"
4+
- compatible: "dlg,da9211" or "dlg,da9212" or "dlg,da9213"
5+
or "dlg,da9214" or "dlg,da9215"
56
- reg: I2C slave address, usually 0x68.
67
- interrupts: the interrupt outputs of the controller
78
- regulators: A node that houses a sub-node for each regulator within the
@@ -21,6 +22,25 @@ Example 1) DA9211
2122
reg = <0x68>;
2223
interrupts = <3 27>;
2324

25+
regulators {
26+
BUCKA {
27+
regulator-name = "VBUCKA";
28+
regulator-min-microvolt = < 300000>;
29+
regulator-max-microvolt = <1570000>;
30+
regulator-min-microamp = <2000000>;
31+
regulator-max-microamp = <5000000>;
32+
enable-gpios = <&gpio 27 0>;
33+
};
34+
};
35+
};
36+
37+
Example 2) DA9212
38+
39+
pmic: da9212@68 {
40+
compatible = "dlg,da9212";
41+
reg = <0x68>;
42+
interrupts = <3 27>;
43+
2444
regulators {
2545
BUCKA {
2646
regulator-name = "VBUCKA";
@@ -41,12 +61,30 @@ Example 1) DA9211
4161
};
4262
};
4363

44-
Example 2) DA9213
64+
Example 3) DA9213
4565
pmic: da9213@68 {
4666
compatible = "dlg,da9213";
4767
reg = <0x68>;
4868
interrupts = <3 27>;
4969

70+
regulators {
71+
BUCKA {
72+
regulator-name = "VBUCKA";
73+
regulator-min-microvolt = < 300000>;
74+
regulator-max-microvolt = <1570000>;
75+
regulator-min-microamp = <3000000>;
76+
regulator-max-microamp = <6000000>;
77+
enable-gpios = <&gpio 27 0>;
78+
};
79+
};
80+
};
81+
82+
Example 4) DA9214
83+
pmic: da9214@68 {
84+
compatible = "dlg,da9214";
85+
reg = <0x68>;
86+
interrupts = <3 27>;
87+
5088
regulators {
5189
BUCKA {
5290
regulator-name = "VBUCKA";
@@ -67,8 +105,7 @@ Example 2) DA9213
67105
};
68106
};
69107

70-
71-
Example 3) DA9215
108+
Example 5) DA9215
72109
pmic: da9215@68 {
73110
compatible = "dlg,da9215";
74111
reg = <0x68>;
Lines changed: 237 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,237 @@
1+
Mediatek MT6323 Regulator Driver
2+
3+
All voltage regulators are defined as subnodes of the regulators node. A list
4+
of regulators provided by this controller are defined as subnodes of the
5+
PMIC's node. Each regulator is named according to its regulator type,
6+
buck_<name> and ldo_<name>. The definition for each of these nodes is defined
7+
using the standard binding for regulators at
8+
Documentation/devicetree/bindings/regulator/regulator.txt.
9+
10+
The valid names for regulators are::
11+
BUCK:
12+
buck_vproc, buck_vsys, buck_vpa
13+
LDO:
14+
ldo_vtcxo, ldo_vcn28, ldo_vcn33_bt, ldo_vcn33_wifi, ldo_va, ldo_vcama,
15+
ldo_vio28, ldo_vusb, ldo_vmc, ldo_vmch, ldo_vemc3v3, ldo_vgp1, ldo_vgp2,
16+
ldo_vgp3, ldo_vcn18, ldo_vsim1, ldo_vsim2, ldo_vrtc, ldo_vcamaf, ldo_vibr,
17+
ldo_vrf18, ldo_vm, ldo_vio18, ldo_vcamd, ldo_vcamio
18+
19+
Example:
20+
21+
pmic: mt6323 {
22+
mt6323regulator: regulators {
23+
mt6323_vproc_reg: buck_vproc{
24+
regulator-name = "vproc";
25+
regulator-min-microvolt = < 700000>;
26+
regulator-max-microvolt = <1350000>;
27+
regulator-ramp-delay = <12500>;
28+
regulator-always-on;
29+
regulator-boot-on;
30+
};
31+
32+
mt6323_vsys_reg: buck_vsys{
33+
regulator-name = "vsys";
34+
regulator-min-microvolt = <1400000>;
35+
regulator-max-microvolt = <2987500>;
36+
regulator-ramp-delay = <25000>;
37+
regulator-always-on;
38+
regulator-boot-on;
39+
};
40+
41+
mt6323_vpa_reg: buck_vpa{
42+
regulator-name = "vpa";
43+
regulator-min-microvolt = < 500000>;
44+
regulator-max-microvolt = <3650000>;
45+
};
46+
47+
mt6323_vtcxo_reg: ldo_vtcxo{
48+
regulator-name = "vtcxo";
49+
regulator-min-microvolt = <2800000>;
50+
regulator-max-microvolt = <2800000>;
51+
regulator-enable-ramp-delay = <90>;
52+
regulator-always-on;
53+
regulator-boot-on;
54+
};
55+
56+
mt6323_vcn28_reg: ldo_vcn28{
57+
regulator-name = "vcn28";
58+
regulator-min-microvolt = <2800000>;
59+
regulator-max-microvolt = <2800000>;
60+
regulator-enable-ramp-delay = <185>;
61+
};
62+
63+
mt6323_vcn33_bt_reg: ldo_vcn33_bt{
64+
regulator-name = "vcn33_bt";
65+
regulator-min-microvolt = <3300000>;
66+
regulator-max-microvolt = <3600000>;
67+
regulator-enable-ramp-delay = <185>;
68+
};
69+
70+
mt6323_vcn33_wifi_reg: ldo_vcn33_wifi{
71+
regulator-name = "vcn33_wifi";
72+
regulator-min-microvolt = <3300000>;
73+
regulator-max-microvolt = <3600000>;
74+
regulator-enable-ramp-delay = <185>;
75+
};
76+
77+
mt6323_va_reg: ldo_va{
78+
regulator-name = "va";
79+
regulator-min-microvolt = <2800000>;
80+
regulator-max-microvolt = <2800000>;
81+
regulator-enable-ramp-delay = <216>;
82+
regulator-always-on;
83+
regulator-boot-on;
84+
};
85+
86+
mt6323_vcama_reg: ldo_vcama{
87+
regulator-name = "vcama";
88+
regulator-min-microvolt = <1500000>;
89+
regulator-max-microvolt = <2800000>;
90+
regulator-enable-ramp-delay = <216>;
91+
};
92+
93+
mt6323_vio28_reg: ldo_vio28{
94+
regulator-name = "vio28";
95+
regulator-min-microvolt = <2800000>;
96+
regulator-max-microvolt = <2800000>;
97+
regulator-enable-ramp-delay = <216>;
98+
regulator-always-on;
99+
regulator-boot-on;
100+
};
101+
102+
mt6323_vusb_reg: ldo_vusb{
103+
regulator-name = "vusb";
104+
regulator-min-microvolt = <3300000>;
105+
regulator-max-microvolt = <3300000>;
106+
regulator-enable-ramp-delay = <216>;
107+
regulator-boot-on;
108+
};
109+
110+
mt6323_vmc_reg: ldo_vmc{
111+
regulator-name = "vmc";
112+
regulator-min-microvolt = <1800000>;
113+
regulator-max-microvolt = <3300000>;
114+
regulator-enable-ramp-delay = <36>;
115+
regulator-boot-on;
116+
};
117+
118+
mt6323_vmch_reg: ldo_vmch{
119+
regulator-name = "vmch";
120+
regulator-min-microvolt = <3000000>;
121+
regulator-max-microvolt = <3300000>;
122+
regulator-enable-ramp-delay = <36>;
123+
regulator-boot-on;
124+
};
125+
126+
mt6323_vemc3v3_reg: ldo_vemc3v3{
127+
regulator-name = "vemc3v3";
128+
regulator-min-microvolt = <3000000>;
129+
regulator-max-microvolt = <3300000>;
130+
regulator-enable-ramp-delay = <36>;
131+
regulator-boot-on;
132+
};
133+
134+
mt6323_vgp1_reg: ldo_vgp1{
135+
regulator-name = "vgp1";
136+
regulator-min-microvolt = <1200000>;
137+
regulator-max-microvolt = <3300000>;
138+
regulator-enable-ramp-delay = <216>;
139+
};
140+
141+
mt6323_vgp2_reg: ldo_vgp2{
142+
regulator-name = "vgp2";
143+
regulator-min-microvolt = <1200000>;
144+
regulator-max-microvolt = <3000000>;
145+
regulator-enable-ramp-delay = <216>;
146+
};
147+
148+
mt6323_vgp3_reg: ldo_vgp3{
149+
regulator-name = "vgp3";
150+
regulator-min-microvolt = <1200000>;
151+
regulator-max-microvolt = <1800000>;
152+
regulator-enable-ramp-delay = <216>;
153+
};
154+
155+
mt6323_vcn18_reg: ldo_vcn18{
156+
regulator-name = "vcn18";
157+
regulator-min-microvolt = <1800000>;
158+
regulator-max-microvolt = <1800000>;
159+
regulator-enable-ramp-delay = <216>;
160+
};
161+
162+
mt6323_vsim1_reg: ldo_vsim1{
163+
regulator-name = "vsim1";
164+
regulator-min-microvolt = <1800000>;
165+
regulator-max-microvolt = <3000000>;
166+
regulator-enable-ramp-delay = <216>;
167+
};
168+
169+
mt6323_vsim2_reg: ldo_vsim2{
170+
regulator-name = "vsim2";
171+
regulator-min-microvolt = <1800000>;
172+
regulator-max-microvolt = <3000000>;
173+
regulator-enable-ramp-delay = <216>;
174+
};
175+
176+
mt6323_vrtc_reg: ldo_vrtc{
177+
regulator-name = "vrtc";
178+
regulator-min-microvolt = <2800000>;
179+
regulator-max-microvolt = <2800000>;
180+
regulator-always-on;
181+
regulator-boot-on;
182+
};
183+
184+
mt6323_vcamaf_reg: ldo_vcamaf{
185+
regulator-name = "vcamaf";
186+
regulator-min-microvolt = <1200000>;
187+
regulator-max-microvolt = <3300000>;
188+
regulator-enable-ramp-delay = <216>;
189+
};
190+
191+
mt6323_vibr_reg: ldo_vibr{
192+
regulator-name = "vibr";
193+
regulator-min-microvolt = <1200000>;
194+
regulator-max-microvolt = <3300000>;
195+
regulator-enable-ramp-delay = <36>;
196+
};
197+
198+
mt6323_vrf18_reg: ldo_vrf18{
199+
regulator-name = "vrf18";
200+
regulator-min-microvolt = <1825000>;
201+
regulator-max-microvolt = <1825000>;
202+
regulator-enable-ramp-delay = <187>;
203+
};
204+
205+
mt6323_vm_reg: ldo_vm{
206+
regulator-name = "vm";
207+
regulator-min-microvolt = <1200000>;
208+
regulator-max-microvolt = <1800000>;
209+
regulator-enable-ramp-delay = <216>;
210+
regulator-always-on;
211+
regulator-boot-on;
212+
};
213+
214+
mt6323_vio18_reg: ldo_vio18{
215+
regulator-name = "vio18";
216+
regulator-min-microvolt = <1800000>;
217+
regulator-max-microvolt = <1800000>;
218+
regulator-enable-ramp-delay = <216>;
219+
regulator-always-on;
220+
regulator-boot-on;
221+
};
222+
223+
mt6323_vcamd_reg: ldo_vcamd{
224+
regulator-name = "vcamd";
225+
regulator-min-microvolt = <1200000>;
226+
regulator-max-microvolt = <1800000>;
227+
regulator-enable-ramp-delay = <216>;
228+
};
229+
230+
mt6323_vcamio_reg: ldo_vcamio{
231+
regulator-name = "vcamio";
232+
regulator-min-microvolt = <1800000>;
233+
regulator-max-microvolt = <1800000>;
234+
regulator-enable-ramp-delay = <216>;
235+
};
236+
};
237+
};

0 commit comments

Comments
 (0)