~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/allwinner/sun50i-h64-remix-mini-pc.dts

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2 // Copyright (c) 2023 ARM Ltd.
  3 
  4 /dts-v1/;
  5 
  6 #include "sun50i-a64.dtsi"
  7 #include "sun50i-a64-cpu-opp.dtsi"
  8 
  9 #include <dt-bindings/gpio/gpio.h>
 10 
 11 / {
 12         model = "Remix Mini PC";
 13         compatible = "jide,remix-mini-pc", "allwinner,sun50i-h64",
 14                      "allwinner,sun50i-a64";
 15 
 16         aliases {
 17                 ethernet1 = &rtl8723bs;
 18                 serial0 = &uart0;
 19         };
 20 
 21         chosen {
 22                 stdout-path = "serial0:115200n8";
 23         };
 24 
 25         hdmi-connector {
 26                 compatible = "hdmi-connector";
 27                 type = "a";
 28 
 29                 port {
 30                         hdmi_con_in: endpoint {
 31                                 remote-endpoint = <&hdmi_out_con>;
 32                         };
 33                 };
 34         };
 35 
 36         reg_vcc5v: regulator-5v {
 37                 /* board wide 5V supply directly from the DC input */
 38                 compatible = "regulator-fixed";
 39                 regulator-name = "vcc-5v";
 40                 regulator-min-microvolt = <5000000>;
 41                 regulator-max-microvolt = <5000000>;
 42                 regulator-always-on;
 43         };
 44 
 45         wifi_pwrseq: pwrseq {
 46                 compatible = "mmc-pwrseq-simple";
 47                 reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
 48                 post-power-on-delay-ms = <200>;
 49         };
 50 };
 51 
 52 &codec {
 53         status = "okay";
 54 };
 55 
 56 &codec_analog {
 57         cpvdd-supply = <&reg_eldo1>;
 58         status = "okay";
 59 };
 60 
 61 &cpu0 {
 62         cpu-supply = <&reg_dcdc2>;
 63 };
 64 
 65 &cpu1 {
 66         cpu-supply = <&reg_dcdc2>;
 67 };
 68 
 69 &cpu2 {
 70         cpu-supply = <&reg_dcdc2>;
 71 };
 72 
 73 &cpu3 {
 74         cpu-supply = <&reg_dcdc2>;
 75 };
 76 
 77 &dai {
 78         status = "okay";
 79 };
 80 
 81 &de {
 82         status = "okay";
 83 };
 84 
 85 &ehci0 {
 86         status = "okay";
 87 };
 88 
 89 &ehci1 {
 90         status = "okay";
 91 };
 92 
 93 &hdmi {
 94         hvcc-supply = <&reg_dldo1>;
 95         status = "okay";
 96 };
 97 
 98 &hdmi_out {
 99         hdmi_out_con: endpoint {
100                 remote-endpoint = <&hdmi_con_in>;
101         };
102 };
103 
104 /* Connects to the AC200 chip */
105 &i2c0 {
106         pinctrl-names = "default";
107         pinctrl-0 = <&i2c0_pins>;
108         status = "okay";
109 };
110 
111 &i2c0_pins {
112         bias-pull-up;
113 };
114 
115 &mmc0 {
116         pinctrl-names = "default";
117         pinctrl-0 = <&mmc0_pins>;
118         vmmc-supply = <&reg_dcdc1>;
119         cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
120         disable-wp;
121         bus-width = <4>;
122         status = "okay";
123 };
124 
125 &mmc1 {
126         pinctrl-names = "default";
127         pinctrl-0 = <&mmc1_pins>;
128         vmmc-supply = <&reg_aldo1>;
129         vqmmc-supply = <&reg_dldo4>;
130         mmc-pwrseq = <&wifi_pwrseq>;
131         bus-width = <4>;
132         non-removable;
133         status = "okay";
134 
135         rtl8723bs: wifi@1 {
136                 reg = <1>;
137                 interrupt-parent = <&r_pio>;
138                 interrupts = <0 3 IRQ_TYPE_LEVEL_LOW>; /* PL3 */
139                 interrupt-names = "host-wake";
140         };
141 };
142 
143 &mmc2 {
144         pinctrl-names = "default";
145         pinctrl-0 = <&mmc2_pins>, <&mmc2_ds_pin>;
146         vmmc-supply = <&reg_dcdc1>;
147         vqmmc-supply = <&reg_eldo1>;
148         bus-width = <8>;
149         non-removable;
150         mmc-hs200-1_8v;
151         mmc-hs400-1_8v;
152         cap-mmc-hw-reset;
153         status = "okay";
154 };
155 
156 &ohci0 {
157         status = "okay";
158 };
159 
160 &ohci1 {
161         status = "okay";
162 };
163 
164 &pio {
165         vcc-pb-supply = <&reg_dcdc1>;
166         vcc-pc-supply = <&reg_dcdc1>;
167         vcc-pd-supply = <&reg_dcdc1>;
168         vcc-pe-supply = <&reg_dcdc1>;
169         vcc-pf-supply = <&reg_dcdc1>;
170         vcc-pg-supply = <&reg_dldo4>;
171         vcc-ph-supply = <&reg_dcdc1>;
172 };
173 
174 &r_ir {
175         status = "okay";
176 };
177 
178 &r_pio {
179         /*
180          * We cannot add that supply for now since it would create a circular
181          * dependency between pinctrl, the regulator and the RSB Bus.
182          *
183          * vcc-pl-supply = <&reg_aldo2>;
184          */
185 };
186 
187 &r_rsb {
188         status = "okay";
189 
190         axp803: pmic@3a3 {
191                 compatible = "x-powers,axp803";
192                 reg = <0x3a3>;
193                 interrupt-parent = <&r_intc>;
194                 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_LOW>;
195                 x-powers,drive-vbus-en;
196 
197                 vin1-supply = <&reg_vcc5v>;
198                 vin2-supply = <&reg_vcc5v>;
199                 vin3-supply = <&reg_vcc5v>;
200                 vin5-supply = <&reg_vcc5v>;
201                 vin6-supply = <&reg_vcc5v>;
202                 aldoin-supply = <&reg_vcc5v>;
203                 dldoin-supply = <&reg_vcc5v>;
204                 eldoin-supply = <&reg_vcc5v>;
205                 fldoin-supply = <&reg_vcc5v>;
206                 drivevbus-supply = <&reg_vcc5v>;
207                 ips-supply = <&reg_vcc5v>;
208 
209                 status = "okay";
210         };
211 };
212 
213 #include "axp803.dtsi"
214 
215 &ac_power_supply {
216         status = "okay";
217 };
218 
219 &reg_dcdc1 {
220         regulator-always-on;
221         regulator-min-microvolt = <3300000>;
222         regulator-max-microvolt = <3300000>;
223         regulator-name = "vcc-3v3";
224 };
225 
226 &reg_dcdc2 {
227         regulator-always-on;
228         regulator-min-microvolt = <1040000>;
229         regulator-max-microvolt = <1300000>;
230         regulator-name = "vdd-cpux";
231 };
232 
233 /* DCDC3 is polyphased with DCDC2 */
234 
235 &reg_dcdc5 {
236         regulator-always-on;
237         regulator-min-microvolt = <1500000>;
238         regulator-max-microvolt = <1500000>;
239         regulator-name = "vcc-dram";
240 };
241 
242 /* Deviates from the reset default of 1.1V. */
243 &reg_dcdc6 {
244         regulator-always-on;
245         regulator-min-microvolt = <1200000>;
246         regulator-max-microvolt = <1200000>;
247         regulator-name = "vdd-sys";
248 };
249 
250 &reg_aldo1 {
251         regulator-min-microvolt = <3300000>;
252         regulator-max-microvolt = <3300000>;
253         regulator-name = "vcc-wifi";
254 };
255 
256 &reg_aldo2 {
257         /* Specifying R_PIO consumer would create circular dependency. */
258         regulator-always-on;
259         regulator-min-microvolt = <3300000>;
260         regulator-max-microvolt = <3300000>;
261         regulator-name = "vcc-pl";
262 };
263 
264 &reg_aldo3 {
265         regulator-always-on;
266         regulator-min-microvolt = <3000000>;
267         regulator-max-microvolt = <3000000>;
268         regulator-name = "vcc-pll-avcc";
269 };
270 
271 /* AC200 power supply */
272 &reg_dldo1 {
273         regulator-always-on;
274         regulator-min-microvolt = <3300000>;
275         regulator-max-microvolt = <3300000>;
276         regulator-name = "vcc-ave-33";
277 };
278 
279 &reg_dldo4 {
280         regulator-min-microvolt = <3300000>;
281         regulator-max-microvolt = <3300000>;
282         regulator-name = "vcc-wifi-io";
283 };
284 
285 &reg_drivevbus {
286         regulator-name = "usb0-vbus";
287         status = "okay";
288 };
289 
290 &reg_eldo1 {
291         regulator-always-on;
292         regulator-min-microvolt = <1800000>;
293         regulator-max-microvolt = <1800000>;
294         regulator-name = "vcc-cpvdd-dram-emmc";
295 };
296 
297 /* Supplies the arisc management core, needed by TF-A to power off cores. */
298 &reg_fldo2 {
299         regulator-always-on;
300         regulator-min-microvolt = <1100000>;
301         regulator-max-microvolt = <1100000>;
302         regulator-name = "vdd-cpus";
303 };
304 
305 &reg_rtc_ldo {
306         regulator-name = "vcc-rtc";
307 };
308 
309 &simplefb_hdmi {
310         vcc-hdmi-supply = <&reg_dcdc1>;
311 };
312 
313 &sound {
314         simple-audio-card,aux-devs = <&codec_analog>;
315         simple-audio-card,widgets = "Microphone", "Microphone Jack",
316                                     "Headphone", "Headphone Jack";
317         simple-audio-card,routing =
318                         "Left DAC", "DACL",
319                         "Right DAC", "DACR",
320                         "Headphone Jack", "HP",
321                         "ADCL", "Left ADC",
322                         "ADCR", "Right ADC",
323                         "MIC2", "Microphone Jack";
324         status = "okay";
325 };
326 
327 /* On the (unpopulated) UART pads. */
328 &uart0 {
329         pinctrl-names = "default";
330         pinctrl-0 = <&uart0_pb_pins>;
331         status = "okay";
332 };
333 
334 &uart1 {
335         pinctrl-names = "default";
336         pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
337         uart-has-rtscts;
338         status = "okay";
339 
340         bluetooth {
341                 compatible = "realtek,rtl8723bs-bt";
342                 enable-gpios = <&r_pio 0 4 GPIO_ACTIVE_HIGH>; /* PL4 */
343                 max-speed = <1500000>;
344         };
345 };
346 
347 &usb_otg {
348         dr_mode = "host";
349         status = "okay";
350 };
351 
352 &usbphy {
353         usb0_vbus-supply = <&reg_drivevbus>;
354         usb1_vbus-supply = <&reg_drivevbus>;
355         status = "okay";
356 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php