Skip to content

Commit 2c1879a

Browse files
neuschaefersuperna9999
authored andcommitted
ARM: dts: amlogic: meson8-fernsehfee3: Describe regulators
The fernsehfee3 board uses a Ricoh RN5T618 PMIC to generate various voltages. Board schematics are not available, but the regulator voltages found in /sys/kernel/debug/regulator/regulator_summary match those in meson8m2-mxiii-plus.dts: DCDC1 0 0 0 unknown 1100mV 0mA 0mV 0mV DCDC2 0 0 0 unknown 1150mV 0mA 0mV 0mV DCDC3 0 0 0 unknown 1500mV 0mA 0mV 0mV LDO1 0 0 0 unknown 2900mV 0mA 0mV 0mV LDO2 0 0 0 unknown 1800mV 0mA 0mV 0mV LDO3 0 0 0 unknown 1800mV 0mA 0mV 0mV LDO4 0 0 0 unknown 2850mV 0mA 0mV 0mV LDO5 0 0 0 unknown 1800mV 0mA 0mV 0mV LDORTC1 0 0 0 unknown 2700mV 0mA 0mV 0mV LDORTC2 0 0 0 unknown 900mV 0mA 0mV 0mV This patch takes the following approach: - Copy RN5T618 regulator nodes from meson8m2-mxiii-plus.dts - Remove some of the regulator names, which do not seem to apply - Verify regulator supply relations by starting without any relations (and without regulator-always-on) and seeing what breaks when the kernel turns off "unused" regulators. This results in the following observations: - When LDO1 is turned off, the board resets - When DCDC1, DCDC2, DCDC3, LDO2, or LDO5 are turned off, the board (as observed through the serial port) stops running, so these must stay on at all times. - LDO4 (VCC2V8) appears to be unused on this board. - LDO3 (VCC1V8_USB) must stay on in order for USB to work, both the external USB ports and the internal USB wifi module. The cpu-supply and mali-supply relations are also copied from meson8m2-mxiii-plus.dts Signed-off-by: J. Neuschäfer <[email protected]> Reviewed-by: Martin Blumenstingl <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
1 parent dac9287 commit 2c1879a

File tree

1 file changed

+91
-0
lines changed

1 file changed

+91
-0
lines changed

arch/arm/boot/dts/amlogic/meson8-fernsehfee3.dts

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,10 @@
8585
};
8686
};
8787

88+
&cpu0 {
89+
cpu-supply = <&vcck>;
90+
};
91+
8892
&ethmac {
8993
status = "okay";
9094
pinctrl-0 = <&eth_pins>;
@@ -117,6 +121,87 @@
117121
compatible = "ricoh,rn5t618";
118122
reg = <0x32>;
119123
system-power-controller;
124+
125+
regulators {
126+
vcck: DCDC1 {
127+
regulator-name = "VCCK";
128+
regulator-min-microvolt = <825000>;
129+
regulator-max-microvolt = <1150000>;
130+
regulator-boot-on;
131+
regulator-always-on;
132+
};
133+
134+
vddee: DCDC2 {
135+
/* the output is also used as VDDAO */
136+
regulator-name = "VDD_EE";
137+
regulator-min-microvolt = <950000>;
138+
regulator-max-microvolt = <1150000>;
139+
regulator-boot-on;
140+
regulator-always-on;
141+
};
142+
143+
DCDC3 {
144+
regulator-name = "VDD_DDR";
145+
regulator-min-microvolt = <1500000>;
146+
regulator-max-microvolt = <1500000>;
147+
regulator-boot-on;
148+
regulator-always-on;
149+
};
150+
151+
LDO1 {
152+
regulator-name = "VDDIO_AO28";
153+
regulator-min-microvolt = <2900000>;
154+
regulator-max-microvolt = <2900000>;
155+
regulator-boot-on;
156+
regulator-always-on;
157+
};
158+
159+
LDO2 {
160+
regulator-name = "VDDIO_AO18";
161+
regulator-min-microvolt = <1800000>;
162+
regulator-max-microvolt = <1800000>;
163+
regulator-boot-on;
164+
regulator-always-on;
165+
};
166+
167+
vcc1v8_usb: LDO3 {
168+
regulator-name = "VCC1V8_USB";
169+
regulator-min-microvolt = <1800000>;
170+
regulator-max-microvolt = <1800000>;
171+
regulator-boot-on;
172+
};
173+
174+
LDO4 {
175+
/* This one appears to be unused */
176+
regulator-name = "VCC2V8";
177+
regulator-min-microvolt = <2850000>;
178+
regulator-max-microvolt = <2850000>;
179+
};
180+
181+
LDO5 {
182+
regulator-name = "AVDD1V8";
183+
regulator-min-microvolt = <1800000>;
184+
regulator-max-microvolt = <1800000>;
185+
regulator-boot-on;
186+
regulator-always-on;
187+
};
188+
189+
LDORTC1 {
190+
regulator-name = "VDD_LDO";
191+
regulator-min-microvolt = <2700000>;
192+
regulator-max-microvolt = <2700000>;
193+
regulator-boot-on;
194+
regulator-always-on;
195+
};
196+
197+
LDORTC2 {
198+
regulator-name = "RTC_0V9";
199+
regulator-min-microvolt = <900000>;
200+
regulator-max-microvolt = <900000>;
201+
regulator-boot-on;
202+
regulator-always-on;
203+
};
204+
};
120205
};
121206

122207
eeprom@50 {
@@ -137,6 +222,10 @@
137222
/* TODO: SiI9293 HDMI receiver @ 0x39 */
138223
};
139224

225+
&mali {
226+
mali-supply = <&vddee>;
227+
};
228+
140229
&sdhc {
141230
status = "okay";
142231
pinctrl-0 = <&sdxc_c_pins>;
@@ -188,6 +277,7 @@
188277

189278
&usb0_phy {
190279
status = "okay";
280+
phy-supply = <&vcc1v8_usb>;
191281
};
192282

193283
&usb1 {
@@ -206,6 +296,7 @@
206296

207297
&usb1_phy {
208298
status = "okay";
299+
phy-supply = <&vcc1v8_usb>;
209300
};
210301

211302
&ir_receiver {

0 commit comments

Comments
 (0)