• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Samsung's Exynos4210 based Galaxy S2 (GT-I9100 version) device tree
4 *
5 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
6 *		http://www.samsung.com
7 * Copyright (c) 2020 Stenkin Evgeniy <stenkinevgeniy@gmail.com>
8 * Copyright (c) 2020 Paul Cercueil <paul@crapouillou.net>
9 */
10
11/dts-v1/;
12#include "exynos4210.dtsi"
13#include "exynos4412-ppmu-common.dtsi"
14
15#include <dt-bindings/gpio/gpio.h>
16#include <dt-bindings/input/linux-event-codes.h>
17
18/ {
19	model = "Samsung Galaxy S2 (GT-I9100)";
20	compatible = "samsung,i9100", "samsung,exynos4210", "samsung,exynos4";
21
22	memory@40000000 {
23		device_type = "memory";
24		reg = <0x40000000 0x40000000>;
25	};
26
27	chosen {
28		stdout-path = "serial2:115200n8";
29	};
30
31	vemmc_reg: regulator-0 {
32		compatible = "regulator-fixed";
33		regulator-name = "VMEM_VDD_2.8V";
34		regulator-min-microvolt = <2800000>;
35		regulator-max-microvolt = <2800000>;
36		gpio = <&gpk0 2 GPIO_ACTIVE_HIGH>;
37		enable-active-high;
38	};
39
40	tsp_reg: regulator-1 {
41		compatible = "regulator-fixed";
42		regulator-name = "TSP_FIXED_VOLTAGES";
43		regulator-min-microvolt = <3300000>;
44		regulator-max-microvolt = <3300000>;
45		gpio = <&gpl0 3 GPIO_ACTIVE_HIGH>;
46		startup-delay-us = <70000>;
47		enable-active-high;
48		regulator-boot-on;
49		regulator-always-on;
50	};
51
52	cam_af_28v_reg: regulator-2 {
53		compatible = "regulator-fixed";
54		regulator-name = "8M_AF_2.8V_EN";
55		regulator-min-microvolt = <2800000>;
56		regulator-max-microvolt = <2800000>;
57		gpio = <&gpk1 1 GPIO_ACTIVE_HIGH>;
58		enable-active-high;
59	};
60
61	cam_io_en_reg: regulator-3 {
62		compatible = "regulator-fixed";
63		regulator-name = "CAM_IO_EN";
64		regulator-min-microvolt = <2800000>;
65		regulator-max-microvolt = <2800000>;
66		gpio = <&gpe2 1 GPIO_ACTIVE_HIGH>;
67		enable-active-high;
68	};
69
70	cam_io_12v_reg: regulator-4 {
71		compatible = "regulator-fixed";
72		regulator-name = "8M_1.2V_EN";
73		regulator-min-microvolt = <1200000>;
74		regulator-max-microvolt = <1200000>;
75		gpio = <&gpe2 5 GPIO_ACTIVE_HIGH>;
76		enable-active-high;
77	};
78
79	vt_core_15v_reg: regulator-5 {
80		compatible = "regulator-fixed";
81		regulator-name = "VT_CORE_1.5V";
82		regulator-min-microvolt = <1500000>;
83		regulator-max-microvolt = <1500000>;
84		gpio = <&gpe2 2 GPIO_ACTIVE_HIGH>;
85		enable-active-high;
86	};
87
88	gpio-keys {
89		compatible = "gpio-keys";
90
91		vol-down {
92			gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
93			linux,code = <KEY_VOLUMEDOWN>;
94			label = "volume down";
95			debounce-interval = <10>;
96		};
97
98		vol-up {
99			gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
100			linux,code = <KEY_VOLUMEUP>;
101			label = "volume up";
102			debounce-interval = <10>;
103		};
104
105		power {
106			gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
107			linux,code = <KEY_POWER>;
108			label = "power";
109			debounce-interval = <10>;
110			wakeup-source;
111		};
112
113		ok {
114			gpios = <&gpx3 5 GPIO_ACTIVE_LOW>;
115			linux,code = <KEY_OK>;
116			label = "ok";
117			debounce-interval = <10>;
118		};
119	};
120
121	wlan_pwrseq: sdhci3-pwrseq {
122		compatible = "mmc-pwrseq-simple";
123		reset-gpios = <&gpl1 2 GPIO_ACTIVE_LOW>;
124	};
125
126	i2c_max17042_fuel: i2c-gpio-0 {
127		compatible = "i2c-gpio";
128		#address-cells = <1>;
129		#size-cells = <0>;
130
131		sda-gpios = <&gpy4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
132		scl-gpios = <&gpy4 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
133		i2c-gpio,delay-us = <5>;
134
135		battery@36 {
136			compatible = "maxim,max17042";
137
138			interrupt-parent = <&gpx2>;
139			interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
140
141			pinctrl-0 = <&max17042_fuel_irq>;
142			pinctrl-names = "default";
143
144			reg = <0x36>;
145			maxim,over-heat-temp = <700>;
146			maxim,over-volt = <4500>;
147		};
148	};
149
150	spi-3 {
151		compatible = "spi-gpio";
152		#address-cells = <1>;
153		#size-cells = <0>;
154
155		num-chipselects = <1>;
156		cs-gpios = <&gpy4 3 GPIO_ACTIVE_LOW>;
157		sck-gpios = <&gpy3 1 GPIO_ACTIVE_HIGH>;
158		mosi-gpios = <&gpy3 3 GPIO_ACTIVE_HIGH>;
159
160		lcd@0 {
161			compatible = "samsung,ld9040";
162			reg = <0>;
163
164			spi-max-frequency = <1200000>;
165
166			vdd3-supply = <&vmipi_reg>;
167			vci-supply = <&vcclcd_reg>;
168
169			reset-gpios = <&gpy4 5 GPIO_ACTIVE_HIGH>;
170			power-on-delay = <10>;
171			reset-delay = <10>;
172
173			panel-width-mm = <90>;
174			panel-height-mm = <154>;
175
176			display-timings {
177				timing {
178					clock-frequency = <23492370>;
179					hactive = <480>;
180					vactive = <800>;
181					hback-porch = <16>;
182					hfront-porch = <16>;
183					vback-porch = <2>;
184					vfront-porch = <28>;
185					hsync-len = <2>;
186					vsync-len = <1>;
187					hsync-active = <0>;
188					vsync-active = <0>;
189					de-active = <0>;
190					pixelclk-active = <0>;
191				};
192			};
193
194			port {
195				lcd_ep: endpoint {
196					remote-endpoint = <&fimd_dpi_ep>;
197				};
198			};
199		};
200	};
201
202	fixed-rate-clocks {
203		xxti {
204			compatible = "samsung,clock-xxti";
205			clock-frequency = <0>;
206		};
207
208		xusbxti {
209			compatible = "samsung,clock-xusbxti";
210			clock-frequency = <24000000>;
211		};
212
213		pmic_ap_clk: pmic-ap-clk {
214			/* Workaround for missing clock on max8997 PMIC */
215			compatible = "fixed-clock";
216			#clock-cells = <0>;
217			clock-frequency = <32768>;
218		};
219	};
220};
221
222&camera {
223	status = "okay";
224};
225
226&cpu0 {
227	cpu0-supply = <&varm_breg>;
228};
229
230&cpu_thermal {
231	cooling-maps {
232		map0 {
233			/* Corresponds to 800MHz */
234			cooling-device = <&cpu0 2 2>;
235		};
236		map1 {
237			/* Corresponds to 200MHz */
238			cooling-device = <&cpu0 4 4>;
239		};
240	};
241};
242
243&ehci {
244	status = "okay";
245
246	phys = <&exynos_usbphy 1>;
247	phy-names = "host";
248};
249
250&exynos_usbphy {
251	status = "okay";
252
253	vbus-supply = <&safe1_sreg>;
254};
255
256&fimc_0 {
257	status = "okay";
258
259	assigned-clocks = <&clock CLK_MOUT_FIMC0>, <&clock CLK_SCLK_FIMC0>;
260	assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
261	assigned-clock-rates = <0>, <160000000>;
262};
263
264&fimc_1 {
265	status = "okay";
266
267	assigned-clocks = <&clock CLK_MOUT_FIMC1>, <&clock CLK_SCLK_FIMC1>;
268	assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
269	assigned-clock-rates = <0>, <160000000>;
270};
271
272&fimc_2 {
273	status = "okay";
274
275	assigned-clocks = <&clock CLK_MOUT_FIMC2>, <&clock CLK_SCLK_FIMC2>;
276	assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
277	assigned-clock-rates = <0>, <160000000>;
278};
279
280&fimc_3 {
281	status = "okay";
282
283	assigned-clocks = <&clock CLK_MOUT_FIMC3>, <&clock CLK_SCLK_FIMC3>;
284	assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
285	assigned-clock-rates = <0>, <160000000>;
286};
287
288&fimd {
289	status = "okay";
290	#address-cells = <1>;
291	#size-cells = <0>;
292
293	samsung,invert-vden;
294	samsung,invert-vclk;
295
296	pinctrl-0 = <&lcd_clk>, <&lcd_data24>;
297	pinctrl-names = "default";
298
299	port@3 {
300		reg = <3>;
301
302		fimd_dpi_ep: endpoint {
303			remote-endpoint = <&lcd_ep>;
304		};
305	};
306};
307
308&gpu {
309	status = "okay";
310
311	mali-supply = <&vg3d_breg>;
312};
313
314&hsotg {
315	status = "okay";
316
317	dr_mode = "otg";
318	vusb_d-supply = <&vusb_reg>;
319	vusb_a-supply = <&vusbdac_reg>;
320};
321
322&i2c_3 {
323	status = "okay";
324
325	samsung,i2c-sda-delay = <100>;
326	samsung,i2c-slave-addr = <0x10>;
327	samsung,i2c-max-bus-freq = <100000>;
328
329	pinctrl-0 = <&i2c3_bus>;
330	pinctrl-names = "default";
331
332	mxt224-touchscreen@4a {
333		compatible = "atmel,maxtouch";
334		reg = <0x4a>;
335
336		interrupt-parent = <&gpx0>;
337		interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
338	};
339};
340
341&i2c_5 {
342	status = "okay";
343
344	samsung,i2c-sda-delay = <100>;
345	samsung,i2c-slave-addr = <0x10>;
346	samsung,i2c-max-bus-freq = <100000>;
347
348	pinctrl-0 = <&i2c5_bus>;
349	pinctrl-names = "default";
350
351	max8997_pmic@66 {
352		compatible = "maxim,max8997-pmic";
353		reg = <0x66>;
354
355		interrupts-extended = <&gpx0 7 IRQ_TYPE_NONE>,
356				      <&gpx2 3 IRQ_TYPE_EDGE_FALLING>;
357
358		max8997,pmic-buck1-uses-gpio-dvs;
359		max8997,pmic-buck2-uses-gpio-dvs;
360		max8997,pmic-buck5-uses-gpio-dvs;
361
362		max8997,pmic-ignore-gpiodvs-side-effect;
363		max8997,pmic-buck125-default-dvs-idx = <0>;
364
365		max8997,pmic-buck125-dvs-gpios = <&gpx0 5 GPIO_ACTIVE_HIGH>,
366						 <&gpx0 6 GPIO_ACTIVE_HIGH>,
367						 <&gpl0 0 GPIO_ACTIVE_HIGH>;
368
369		max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>,
370						 <1250000>, <1200000>,
371						 <1150000>, <1100000>,
372						 <1000000>, <950000>;
373
374		max8997,pmic-buck2-dvs-voltage = <1100000>, <1000000>,
375						 <950000>,  <900000>,
376						 <1100000>, <1000000>,
377						 <950000>,  <900000>;
378
379		max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>,
380						 <1200000>, <1200000>,
381						 <1200000>, <1200000>,
382						 <1200000>, <1200000>;
383
384		pinctrl-0 = <&max8997_irq>, <&otg_gp>, <&usb_sel>;
385		pinctrl-names = "default";
386
387		regulators {
388			vadc_reg: LDO1 {
389				regulator-name = "VADC_3.3V_C210";
390				regulator-min-microvolt = <3300000>;
391				regulator-max-microvolt = <3300000>;
392				regulator-always-on;
393
394			};
395			valive_reg: LDO2 {
396				regulator-name = "VALIVE_1.1V_C210";
397				regulator-min-microvolt = <1100000>;
398				regulator-max-microvolt = <1100000>;
399				regulator-always-on;
400
401			};
402
403			vusb_reg: LDO3 {
404				regulator-name = "VUSB_1.1V_C210";
405				regulator-min-microvolt = <1100000>;
406				regulator-max-microvolt = <1100000>;
407			};
408
409			vmipi_reg: LDO4 {
410				regulator-name = "VMIPI_1.8V";
411				regulator-min-microvolt = <1800000>;
412				regulator-max-microvolt = <1800000>;
413				regulator-always-on;
414			};
415
416			vhsic_reg: LDO5 {
417				regulator-name = "VHSIC_1.2V";
418				regulator-min-microvolt = <1200000>;
419				regulator-max-microvolt = <1200000>;
420				regulator-always-on;
421			};
422
423			vpda_reg: LDO6 {
424				regulator-name = "VCC_1.8V_PDA";
425				regulator-min-microvolt = <1800000>;
426				regulator-max-microvolt = <1800000>;
427				regulator-always-on;
428			};
429
430			vcam_reg: LDO7 {
431				regulator-name = "CAM_ISP_1.8V";
432				regulator-min-microvolt = <1800000>;
433				regulator-max-microvolt = <1800000>;
434			};
435
436			vusbdac_reg: LDO8 {
437				regulator-name = "VUSB+VDAC_3.3V_C210";
438				regulator-min-microvolt = <3300000>;
439				regulator-max-microvolt = <3300000>;
440			};
441
442			vccpda_reg: LDO9 {
443				regulator-name = "VCC_2.8V_PDA";
444				regulator-min-microvolt = <2800000>;
445				regulator-max-microvolt = <2800000>;
446				regulator-always-on;
447			};
448
449			vtouch_reg: LDO11 {
450				regulator-name = "TOUCH_2.8V";
451				regulator-min-microvolt = <2800000>;
452				regulator-max-microvolt = <2800000>;
453				regulator-always-on;
454			};
455
456			vpll_reg: LDO10 {
457				regulator-name = "VPLL_1.1V";
458				regulator-min-microvolt = <1100000>;
459				regulator-max-microvolt = <1100000>;
460				regulator-always-on;
461			};
462
463			vtcam_reg: LDO12 {
464				regulator-name = "VT_CAM_1.8V";
465				regulator-min-microvolt = <1800000>;
466				regulator-max-microvolt = <1800000>;
467			};
468
469			vcclcd_reg: LDO13 {
470				regulator-name = "VCC_3.0V_LCD";
471				regulator-min-microvolt = <3000000>;
472				regulator-max-microvolt = <3000000>;
473			};
474
475			vmotor_reg: LDO14 {
476				regulator-name = "VCC_2.8V_MOTOR";
477				regulator-min-microvolt = <2800000>;
478				regulator-max-microvolt = <2800000>;
479			};
480
481			vled_reg: LDO15 {
482				regulator-name = "LED_A_2.8V";
483				regulator-min-microvolt = <2800000>;
484				regulator-max-microvolt = <2800000>;
485			};
486
487			camsensor_reg: LDO16 {
488				regulator-name = "CAM_SENSOR_IO_1.8V";
489				regulator-min-microvolt = <1800000>;
490				regulator-max-microvolt = <1800000>;
491			};
492
493			vtf_reg: LDO17 {
494				regulator-name = "VTF_2.8V";
495				regulator-min-microvolt = <2800000>;
496				regulator-max-microvolt = <2800000>;
497			};
498
499			vtouchled_reg: LDO18 {
500				regulator-name = "TOUCH_LED_3.3V";
501				regulator-min-microvolt = <2500000>;
502				regulator-max-microvolt = <3300000>;
503			};
504
505			vddq_reg: LDO21 {
506				regulator-name = "VDDQ_M1M2_1.2V";
507				regulator-min-microvolt = <1200000>;
508				regulator-max-microvolt = <1200000>;
509				regulator-always-on;
510			};
511
512			varm_breg: BUCK1 {
513				regulator-name = "VARM_1.2V_C210";
514				regulator-min-microvolt = <65000>;
515				regulator-max-microvolt = <2225000>;
516				regulator-always-on;
517			};
518
519			vint_breg: BUCK2 {
520				regulator-name = "VINT_1.1V_C210";
521				regulator-min-microvolt = <65000>;
522				regulator-max-microvolt = <2225000>;
523				regulator-always-on;
524			};
525
526			vg3d_breg: BUCK3 {
527				regulator-name = "G3D_1.1V";
528				regulator-min-microvolt = <900000>;
529				regulator-max-microvolt = <1200000>;
530				regulator-microvolt-offset = <50000>;
531				regulator-always-on;
532			};
533
534			camisp_breg: BUCK4 {
535				regulator-name = "CAM_ISP_CORE_1.2V";
536				regulator-min-microvolt = <1200000>;
537				regulator-max-microvolt = <1200000>;
538			};
539
540			vmem_breg: BUCK5 {
541				regulator-name = "VMEM_1.2V";
542				regulator-min-microvolt = <1200000>;
543				regulator-max-microvolt = <1200000>;
544				regulator-always-on;
545			};
546
547			vccsub_breg: BUCK7 {
548				regulator-name = "VCC_SUB_2.0V";
549				regulator-min-microvolt = <2000000>;
550				regulator-max-microvolt = <2000000>;
551				regulator-always-on;
552			};
553
554			safe1_sreg: ESAFEOUT1 {
555				regulator-name = "SAFEOUT1";
556			};
557
558			safe2_sreg: ESAFEOUT2 {
559				regulator-name = "SAFEOUT2";
560				regulator-boot-on;
561			};
562
563			charger_reg: CHARGER {
564				regulator-name = "CHARGER";
565				regulator-min-microamp = <60000>;
566				regulator-max-microamp = <2580000>;
567				regulator-always-on;
568			};
569
570			chargercv_reg: CHARGER_CV {
571				regulator-name = "CHARGER_CV";
572				regulator-min-microvolt = <3800000>;
573				regulator-max-microvolt = <4100000>;
574				regulator-always-on;
575			};
576
577			EN32KHZ_AP {
578				regulator-name = "EN32KHZ_AP";
579				regulator-always-on;
580			};
581
582			EN32KHZ_CP {
583				regulator-name = "EN32KHZ_CP";
584				regulator-always-on;
585			};
586		};
587	};
588};
589
590&i2c_7 {
591	status = "okay";
592
593	samsung,i2c-sda-delay = <100>;
594	samsung,i2c-slave-addr = <0x10>;
595	samsung,i2c-max-bus-freq = <400000>;
596
597	pinctrl-0 = <&i2c7_bus>;
598	pinctrl-names = "default";
599
600	ak8975@c {
601		compatible = "asahi-kasei,ak8975";
602		reg = <0x0c>;
603
604		gpios = <&gpx2 2 GPIO_ACTIVE_HIGH>;
605	};
606};
607
608&pinctrl_0 {
609	pinctrl-names = "default";
610	pinctrl-0 = <&sleep0>;
611
612	sleep0: sleep-states {
613		gpa0-0 {
614			samsung,pins = "gpa0-0";
615			samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>;
616			samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
617		};
618
619		gpa0-1 {
620			samsung,pins = "gpa0-1";
621			samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT0>;
622			samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
623		};
624
625		gpa0-2 {
626			samsung,pins = "gpa0-2";
627			samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>;
628			samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
629		};
630
631		gpa0-3 {
632			samsung,pins = "gpa0-3";
633			samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT1>;
634			samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
635		};
636	};
637};
638
639&pinctrl_1 {
640	mhl_int: mhl-int {
641		samsung,pins = "gpf3-5";
642		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
643	};
644
645	i2c_mhl_bus: i2c-mhl-bus {
646		samsung,pins = "gpf0-4", "gpf0-6";
647		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
648		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
649		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
650	};
651
652	usb_sel: usb-sel {
653		samsung,pins = "gpl0-6";
654		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
655		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
656		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
657		samsung,pin-val = <0>;
658	};
659
660	bt_en: bt-en {
661		samsung,pins = "gpl0-4";
662		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
663		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
664		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
665		samsung,pin-val = <0>;
666	};
667
668	bt_res: bt-res {
669		samsung,pins = "gpl1-0";
670		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
671		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
672		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
673		samsung,pin-val = <0>;
674	};
675
676	otg_gp: otg-gp {
677		samsung,pins = "gpx3-3";
678		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
679		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
680		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
681		samsung,pin-val = <0>;
682	};
683
684	mag_mhl_gpio: mag-mhl {
685		samsung,pins = "gpd0-2";
686		samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
687		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
688	};
689
690	max8997_irq: max8997-irq {
691		samsung,pins = "gpx0-7";
692		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
693	};
694
695	max17042_fuel_irq: max17042-fuel-irq {
696		samsung,pins = "gpx2-3";
697		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
698	};
699
700	tsp224_irq: tsp224-irq {
701		samsung,pins = "gpx0-4";
702		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
703	};
704};
705
706&rtc {
707	status = "okay";
708	clocks = <&clock CLK_RTC>, <&pmic_ap_clk>;
709	clock-names = "rtc", "rtc_src";
710};
711
712&sdhci_0 {
713	status = "okay";
714
715	bus-width = <8>;
716	non-removable;
717	vmmc-supply = <&vemmc_reg>;
718
719	pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_bus8>;
720	pinctrl-names = "default";
721};
722
723&sdhci_2 {
724	status = "okay";
725
726	bus-width = <4>;
727	cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
728	vmmc-supply = <&vtf_reg>;
729
730	pinctrl-0 = <&sd2_clk>, <&sd2_cmd>, <&sd2_bus4>;
731	pinctrl-names = "default";
732};
733
734&sdhci_3 {
735	status = "okay";
736
737	#address-cells = <1>;
738	#size-cells = <0>;
739
740	non-removable;
741	bus-width = <4>;
742	mmc-pwrseq = <&wlan_pwrseq>;
743	vmmc-supply = <&vtf_reg>;
744
745	pinctrl-names = "default";
746	pinctrl-0 = <&sd3_clk>, <&sd3_cmd>, <&sd3_bus4>;
747
748	brcmf: wifi@1 {
749		compatible = "brcm,bcm4330-fmac";
750		reg = <1>;
751
752		interrupt-parent = <&gpx2>;
753		interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
754		interrupt-names = "host-wake";
755	};
756};
757
758&serial_0 {
759	status = "okay";
760
761	pinctrl-names = "default";
762	pinctrl-0 = <&bt_en>, <&bt_res>, <&uart0_data>, <&uart0_fctl>;
763
764	bluetooth {
765		compatible = "brcm,bcm4330-bt";
766
767		shutdown-gpios = <&gpl0 4 GPIO_ACTIVE_HIGH>;
768		reset-gpios = <&gpl1 0 GPIO_ACTIVE_LOW>;
769		device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
770		host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>;
771	};
772};
773
774&serial_1 {
775	status = "okay";
776};
777
778&serial_2 {
779	status = "okay";
780};
781
782&serial_3 {
783	status = "okay";
784};
785
786&tmu {
787	status = "okay";
788};
789