• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * dts file for Hisilicon HiKey960 Development Board
4 *
5 * Copyright (C) 2016, Hisilicon Ltd.
6 *
7 */
8
9/dts-v1/;
10
11#include "hi3660.dtsi"
12#include "hikey960-pinctrl.dtsi"
13#include "hi3660-drm.dtsi"
14#include "hi3660-gpu.dtsi"
15
16#include <dt-bindings/gpio/gpio.h>
17#include <dt-bindings/input/input.h>
18#include <dt-bindings/interrupt-controller/irq.h>
19#include <dt-bindings/usb/pd.h>
20
21/ {
22	model = "HiKey960";
23	compatible = "hisilicon,hi3660-hikey960", "hisilicon,hi3660";
24
25	aliases {
26		mshc1 = &dwmmc1;
27		mshc2 = &dwmmc2;
28		serial0 = &uart0;
29		serial1 = &uart1;
30		serial2 = &uart2;
31		serial3 = &uart3;
32		serial4 = &uart4;
33		serial5 = &uart5;
34		serial6 = &uart6;
35	};
36
37	chosen {
38		stdout-path = "serial6:115200n8";
39	};
40
41	memory@0 {
42		device_type = "memory";
43		/* rewrite this at bootloader */
44		reg = <0x0 0x0 0x0 0x0>;
45	};
46
47	reserved-memory {
48		#address-cells = <2>;
49		#size-cells = <2>;
50		ranges;
51
52		ramoops@32000000 {
53			compatible = "ramoops";
54			reg = <0x0 0x32000000 0x0 0x00100000>;
55			record-size	= <0x00020000>;
56			console-size	= <0x00020000>;
57			ftrace-size	= <0x00020000>;
58		};
59
60		/* global autoconfigured region for contiguous allocations */
61		linux,cma {
62			compatible = "shared-dma-pool";
63			reg = <0x0 0x20C00000 0x0 0x4000000>;
64			reusable;
65			linux,cma-default;
66		};
67	};
68
69	reboot-mode-syscon@32100000 {
70		compatible = "syscon", "simple-mfd";
71		reg = <0x0 0x32100000 0x0 0x00001000>;
72
73		reboot-mode {
74			compatible = "syscon-reboot-mode";
75			offset = <0x0>;
76
77			mode-normal	= <0x77665501>;
78			mode-bootloader	= <0x77665500>;
79			mode-recovery	= <0x77665502>;
80		};
81	};
82
83	keys {
84		compatible = "gpio-keys";
85		pinctrl-names = "default";
86		pinctrl-0 = <&pwr_key_pmx_func &pwr_key_cfg_func>;
87
88		power {
89			wakeup-source;
90			gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
91			label = "GPIO Power";
92			linux,code = <KEY_POWER>;
93		};
94	};
95
96	leds {
97		compatible = "gpio-leds";
98
99		user_led1 {
100			label = "green:user1";
101			/* gpio_150_user_led1 */
102			gpios = <&gpio18 6 0>;
103			linux,default-trigger = "heartbeat";
104		};
105
106		user_led2 {
107			label = "green:user2";
108			/* gpio_151_user_led2 */
109			gpios = <&gpio18 7 0>;
110			linux,default-trigger = "none";
111		};
112
113		user_led3 {
114			label = "green:user3";
115			/* gpio_189_user_led3 */
116			gpios = <&gpio23 5 0>;
117			linux,default-trigger = "mmc0";
118		};
119
120		user_led4 {
121			label = "green:user4";
122			/* gpio_190_user_led4 */
123			gpios = <&gpio23 6 0>;
124			panic-indicator;
125			linux,default-trigger = "none";
126		};
127
128		wlan_active_led {
129			label = "yellow:wlan";
130			/* gpio_205_wifi_active */
131			gpios = <&gpio25 5 0>;
132			linux,default-trigger = "phy0tx";
133			default-state = "off";
134		};
135
136		bt_active_led {
137			label = "blue:bt";
138			gpios = <&gpio25 7 0>;
139			/* gpio_207_user_led1 */
140			linux,default-trigger = "hci0-power";
141			default-state = "off";
142		};
143	};
144
145	pmic: pmic@fff34000 {
146		compatible = "hisilicon,hi6421v530-pmic";
147		reg = <0x0 0xfff34000 0x0 0x1000>;
148		interrupt-controller;
149		#interrupt-cells = <2>;
150
151		regulators {
152			ldo3: LDO3 { /* HDMI */
153				regulator-name = "VOUT3_1V85";
154				regulator-min-microvolt = <1800000>;
155				regulator-max-microvolt = <2200000>;
156				regulator-enable-ramp-delay = <120>;
157			};
158
159			ldo9: LDO9 { /* SDCARD I/O */
160				regulator-name = "VOUT9_1V8_2V95";
161				regulator-min-microvolt = <1750000>;
162				regulator-max-microvolt = <3300000>;
163				regulator-enable-ramp-delay = <240>;
164			};
165
166			ldo11: LDO11 { /* Low Speed Connector */
167				regulator-name = "VOUT11_1V8_2V95";
168				regulator-min-microvolt = <1750000>;
169				regulator-max-microvolt = <3300000>;
170				regulator-enable-ramp-delay = <240>;
171			};
172
173			ldo15: LDO15 { /* UFS VCC */
174				regulator-name = "VOUT15_3V0";
175				regulator-min-microvolt = <1750000>;
176				regulator-max-microvolt = <3000000>;
177				regulator-boot-on;
178				regulator-always-on;
179				regulator-enable-ramp-delay = <120>;
180			};
181
182			ldo16: LDO16 { /* SD VDD */
183				regulator-name = "VOUT16_2V95";
184				regulator-min-microvolt = <1750000>;
185				regulator-max-microvolt = <3000000>;
186				regulator-enable-ramp-delay = <360>;
187			};
188		};
189	};
190
191	wlan_en: wlan-en-1-8v {
192		compatible = "regulator-fixed";
193		regulator-name = "wlan-en-regulator";
194		regulator-min-microvolt = <1800000>;
195		regulator-max-microvolt = <1800000>;
196
197		/* GPIO_051_WIFI_EN */
198		gpio = <&gpio6 3 0>;
199
200		/* WLAN card specific delay */
201		startup-delay-us = <70000>;
202		enable-active-high;
203	};
204
205	firmware {
206		optee {
207			compatible = "linaro,optee-tz";
208			method = "smc";
209		};
210	};
211
212	hisi_hikey_usb: hisi_hikey_usb {
213		compatible = "hisilicon,gpio_hubv1";
214		typec-vbus-gpios = <&gpio25 2 GPIO_ACTIVE_HIGH>;
215		otg-switch-gpios = <&gpio25 6 GPIO_ACTIVE_HIGH>;
216		hub-vdd33-en-gpios = <&gpio5 6 GPIO_ACTIVE_HIGH>;
217		usb-role-switch;
218
219		port {
220			#address-cells = <1>;
221			#size-cells = <0>;
222
223			hikey_usb_ep0: endpoint@0 {
224				reg = <0>;
225				remote-endpoint = <&dwc3_role_switch>;
226			};
227			hikey_usb_ep1: endpoint@1 {
228				reg = <1>;
229				remote-endpoint = <&rt1711h_ep>;
230			};
231		};
232	};
233
234	i2s2: hi3660_i2s {
235		compatible = "hisilicon,hi3660-i2s-1.0";
236		reg = <0x0 0xe804f800 0x0 0x400>,
237			<0x0 0xe804e000 0x0 0x400>;
238		pinctrl-names = "default";
239		pinctrl-0 = <&i2s2_pmx_func &i2s2_cfg_func>;
240		dmas = <&asp_dmac 18 &asp_dmac 19>;
241		dma-names = "rx", "tx";
242		#sound-dai-cells = <0>;
243	};
244
245	sound {
246		compatible = "simple-audio-card";
247		simple-audio-card,name = "hikey-hdmi";
248		simple-audio-card,format = "i2s";
249
250		simple-audio-card,bitclock-master = <&sound_master>;
251		simple-audio-card,frame-master = <&sound_master>;
252
253		sound_master: simple-audio-card,cpu {
254			sound-dai = <&i2s2>;
255		};
256
257		simple-audio-card,codec {
258			sound-dai = <&adv7533>;
259		};
260	};
261};
262
263/*
264 * Legend: proper name = the GPIO line is used as GPIO
265 *         NC = not connected (pin out but not routed from the chip to
266 *              anything the board)
267 *         "[PER]" = pin is muxed for [peripheral] (not GPIO)
268 *         "" = no idea, schematic doesn't say, could be
269 *              unrouted (not connected to any external pin)
270 *         LSEC = Low Speed External Connector
271 *         HSEC = High Speed External Connector
272 *
273 * Line names are taken from "HiKey 960 Board ver A" schematics
274 * from Huawei. The 40 pin low speed expansion connector is named
275 * J2002 63453-140LF.
276 *
277 * For the lines routed to the external connectors the
278 * lines are named after the 96Boards CE Specification 1.0,
279 * Appendix "Expansion Connector Signal Description".
280 *
281 * When the 96Board naming of a line and the schematic name of
282 * the same line are in conflict, the 96Board specification
283 * takes precedence, which means that the external UART on the
284 * LSEC is named UART0 while the schematic and SoC names this
285 * UART3. This is only for the informational lines i.e. "[FOO]",
286 * the GPIO named lines "GPIO-A" thru "GPIO-L" are the only
287 * ones actually used for GPIO.
288 */
289&gpio0 {
290	/* GPIO_000-GPIO_007 */
291	gpio-line-names =
292		"",
293		"TP901", /* TEST_MODE connected to TP901 */
294		"[PMU0_SSI]",
295		"[PMU1_SSI]",
296		"[PMU2_SSI]",
297		"[PMU0_CLKOUT]",
298		"[JTAG_TCK]",
299		"[JTAG_TMS]";
300};
301
302&gpio1 {
303	/* GPIO_008-GPIO_015 */
304	gpio-line-names =
305		"[JTAG_TRST_N]",
306		"[JTAG_TDI]",
307		"[JTAG_TDO]",
308		"NC", "NC",
309		"[I2C3_SCL]",
310		"[I2C3_SDA]",
311		"NC";
312};
313
314&gpio2 {
315	/* GPIO_016-GPIO_023 */
316	gpio-line-names =
317		"NC", "NC", "NC",
318		"GPIO-J", /* LSEC pin 32: GPIO_019 */
319		"GPIO_020_HDMI_SEL",
320		"GPIO-L", /* LSEC pin 34: GPIO_021 */
321		"GPIO_022_UFSBUCK_INT_N",
322		"GPIO-G"; /* LSEC pin 29: LCD_TE0 */
323};
324
325&gpio3 {
326	/* GPIO_024-GPIO_031 */
327	/* The rail from pin BK36 is named LCD_TE0, we assume to be muxed as GPIO for GPIO-G */
328	gpio-line-names =
329		"[CSI0_MCLK]", /* HSEC pin 15: ISP_CCLK0_MCAM */
330		"[CSI1_MCLK]", /* HSEC pin 17: ISP_CCLK1_SCAM */
331		"NC",
332		"[I2C2_SCL]", /* HSEC pin 32: ISP_SCL0 */
333		"[I2C2_SDA]", /* HSEC pin 34: ISP_SDA0 */
334		"[I2C3_SCL]", /* HSEC pin 36: ISP_SCL1 */
335		"[I2C3_SDA]", /* HSEC pin 38: ISP_SDA1 */
336		"NC";
337};
338
339&gpio4 {
340	/* GPIO_032-GPIO_039 */
341	gpio-line-names =
342		"NC", "NC",
343		"PWR_BTN_N", /* LSEC pin 4: GPIO_034_PWRON_DET */
344		"GPIO_035_PMU2_EN",
345		"GPIO_036_USB_HUB_RESET",
346		"NC", "NC", "NC";
347};
348
349&gpio5 {
350	/* GPIO_040-GPIO_047 */
351	gpio-line-names =
352		"GPIO-H", /* LSEC pin 30: GPIO_040_LCD_RST_N */
353		"GPIO_041_HDMI_PD",
354		"TP904", /* Test point */
355		"TP905", /* Test point */
356		"NC", "NC",
357		"GPIO_046_HUB_VDD33_EN",
358		"GPIO_047_PMU1_EN";
359};
360
361&gpio6 {
362	/* GPIO_048-GPIO_055 */
363	gpio-line-names =
364		"NC", "NC", "NC",
365		"GPIO_051_WIFI_EN",
366		"GPIO-I", /* LSEC pin 31: GPIO_052_CAM0_RST_N */
367		/*
368		 * These two pins should be used for SD(IO) data according to the
369		 * 96boards specification but seems to be repurposed for a IRDA UART.
370		 * They are however named according to the spec.
371		 */
372		"[SD_DAT1]", /* HSEC pin 3: UART0_IRDA_RXD */
373		"[SD_DAT2]", /* HSEC pin 5: UART0_IRDA_TXD */
374		"[UART1_RXD]"; /* LSEC pin 13: DEBUG_UART6_RXD */
375};
376
377&gpio7 {
378	/* GPIO_056-GPIO_063 */
379	gpio-line-names =
380		"[UART1_TXD]", /* LSEC pin 11: DEBUG_UART6_TXD */
381		"[UART0_CTS]", /* LSEC pin 3: UART3_CTS_N */
382		"[UART0_RTS]", /* LSEC pin 9: UART3_RTS_N */
383		"[UART0_RXD]", /* LSEC pin 7: UART3_RXD */
384		"[UART0_TXD]", /* LSEC pin 5: UART3_TXD */
385		"[SOC_BT_UART4_CTS_N]",
386		"[SOC_BT_UART4_RTS_N]",
387		"[SOC_BT_UART4_RXD]";
388};
389
390&gpio8 {
391	/* GPIO_064-GPIO_071 */
392	gpio-line-names =
393		"[SOC_BT_UART4_TXD]",
394		"NC",
395		"[PMU_HKADC_SSI]",
396		"NC",
397		"GPIO_068_SEL",
398		"NC", "NC", "NC";
399
400};
401
402&gpio9 {
403	/* GPIO_072-GPIO_079 */
404	gpio-line-names =
405		"NC", "NC", "NC",
406		"GPIO-K", /* LSEC pin 33: GPIO_075_CAM1_RST_N */
407		"NC", "NC", "NC", "NC";
408};
409
410&gpio10 {
411	/* GPIO_080-GPIO_087 */
412	gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
413};
414
415&gpio11 {
416	/* GPIO_088-GPIO_095 */
417	gpio-line-names =
418		"NC",
419		"[PCIE_PERST_N]",
420		"NC", "NC", "NC", "NC", "NC", "NC";
421};
422
423&gpio12 {
424	/* GPIO_096-GPIO_103 */
425	gpio-line-names = "NC", "NC", "NC", "", "", "", "", "NC";
426};
427
428&gpio13 {
429	/* GPIO_104-GPIO_111 */
430	gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
431};
432
433&gpio14 {
434	/* GPIO_112-GPIO_119 */
435	gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
436};
437
438&gpio15 {
439	/* GPIO_120-GPIO_127 */
440	gpio-line-names =
441		"NC", "NC", "NC", "NC", "NC", "NC",
442		"GPIO_126_BT_EN",
443		"TP902"; /* GPIO_127_JTAG_SEL0 */
444};
445
446&gpio16 {
447	/* GPIO_128-GPIO_135 */
448	gpio-line-names = "", "", "", "", "", "", "", "";
449};
450
451&gpio17 {
452	/* GPIO_136-GPIO_143 */
453	gpio-line-names = "", "", "", "", "", "", "", "";
454};
455
456&gpio18 {
457	/* GPIO_144-GPIO_151 */
458	gpio-line-names =
459		"[UFS_REF_CLK]",
460		"[UFS_RST_N]",
461		"[SPI1_SCLK]", /* HSEC pin 9: GPIO_146_SPI3_CLK */
462		"[SPI1_DIN]", /* HSEC pin 11: GPIO_147_SPI3_DI */
463		"[SPI1_DOUT]", /* HSEC pin 1: GPIO_148_SPI3_DO */
464		"[SPI1_CS]", /* HSEC pin 7: GPIO_149_SPI3_CS0_N */
465		"GPIO_150_USER_LED1",
466		"GPIO_151_USER_LED2";
467};
468
469&gpio19 {
470	/* GPIO_152-GPIO_159 */
471	gpio-line-names = "NC", "NC", "NC", "NC", "", "", "", "";
472};
473
474&gpio20 {
475	/* GPIO_160-GPIO_167 */
476	gpio-line-names =
477		"[SD_CLK]",
478		"[SD_CMD]",
479		"[SD_DATA0]",
480		"[SD_DATA1]",
481		"[SD_DATA2]",
482		"[SD_DATA3]",
483		"", "";
484};
485
486&gpio21 {
487	/* GPIO_168-GPIO_175 */
488	gpio-line-names =
489		"[WL_SDIO_CLK]",
490		"[WL_SDIO_CMD]",
491		"[WL_SDIO_DATA0]",
492		"[WL_SDIO_DATA1]",
493		"[WL_SDIO_DATA2]",
494		"[WL_SDIO_DATA3]",
495		"", "";
496};
497
498&gpio22 {
499	/* GPIO_176-GPIO_183 */
500	gpio-line-names =
501		"[GPIO_176_PMU_PWR_HOLD]",
502		"NA",
503		"[SYSCLK_EN]",
504		"GPIO_179_WL_WAKEUP_AP",
505		"GPIO_180_HDMI_INT",
506		"NA",
507		"GPIO-F", /* LSEC pin 28: LCD_BL_PWM */
508		"[I2C0_SCL]"; /* LSEC pin 15 */
509};
510
511&gpio23 {
512	/* GPIO_184-GPIO_191 */
513	gpio-line-names =
514		"[I2C0_SDA]", /* LSEC pin 17 */
515		"[I2C1_SCL]", /* Actual SoC I2C1 */
516		"[I2C1_SDA]", /* Actual SoC I2C1 */
517		"[I2C1_SCL]", /* LSEC pin 19: I2C7_SCL */
518		"[I2C1_SDA]", /* LSEC pin 21: I2C7_SDA */
519		"GPIO_189_USER_LED3",
520		"GPIO_190_USER_LED4",
521		"";
522};
523
524&gpio24 {
525	/* GPIO_192-GPIO_199 */
526	gpio-line-names =
527		"[PCM_DI]", /* LSEC pin 22: GPIO_192_I2S0_DI */
528		"[PCM_DO]", /* LSEC pin 20: GPIO_193_I2S0_DO */
529		"[PCM_CLK]", /* LSEC pin 18: GPIO_194_I2S0_XCLK */
530		"[PCM_FS]", /* LSEC pin 16: GPIO_195_I2S0_XFS */
531		"[GPIO_196_I2S2_DI]",
532		"[GPIO_197_I2S2_DO]",
533		"[GPIO_198_I2S2_XCLK]",
534		"[GPIO_199_I2S2_XFS]";
535};
536
537&gpio25 {
538	/* GPIO_200-GPIO_207 */
539	gpio-line-names =
540		"NC",
541		"NC",
542		"GPIO_202_VBUS_TYPEC",
543		"GPIO_203_SD_DET",
544		"GPIO_204_PMU12_IRQ_N",
545		"GPIO_205_WIFI_ACTIVE",
546		"GPIO_206_USBSW_SEL",
547		"GPIO_207_BT_ACTIVE";
548};
549
550&gpio26 {
551	/* GPIO_208-GPIO_215 */
552	gpio-line-names =
553		"GPIO-A", /* LSEC pin 23: GPIO_208 */
554		"GPIO-B", /* LSEC pin 24: GPIO_209 */
555		"GPIO-C", /* LSEC pin 25: GPIO_210 */
556		"GPIO-D", /* LSEC pin 26: GPIO_211 */
557		"GPIO-E", /* LSEC pin 27: GPIO_212 */
558		"[PCIE_CLKREQ_N]",
559		"[PCIE_WAKE_N]",
560		"[SPI0_CLK]"; /* LSEC pin 8: SPI2_CLK */
561};
562
563&gpio27 {
564	/* GPIO_216-GPIO_223 */
565	gpio-line-names =
566		"[SPI0_DIN]", /* LSEC pin 10: SPI2_DI */
567		"[SPI0_DOUT]", /* LSEC pin 14: SPI2_DO */
568		"[SPI0_CS]", /* LSEC pin 12: SPI2_CS0_N */
569		"GPIO_219_CC_INT",
570		"NC",
571		"NC",
572		"[PMU_INT]",
573		"";
574};
575
576&gpio28 {
577	/* GPIO_224-GPIO_231 */
578	gpio-line-names =
579		"", "", "", "", "", "", "", "";
580};
581
582&i2c0 {
583	/* On Low speed expansion */
584	label = "LS-I2C0";
585	status = "okay";
586};
587
588&i2c1 {
589	status = "okay";
590
591	rt1711h: rt1711h@4e {
592		compatible = "richtek,rt1711h";
593		reg = <0x4e>;
594		status = "okay";
595		interrupt-parent = <&gpio27>;
596		interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
597		pinctrl-names = "default";
598		pinctrl-0 = <&usb_cfg_func>;
599
600		usb_con: connector {
601			compatible = "usb-c-connector";
602			label = "USB-C";
603			data-role = "dual";
604			power-role = "dual";
605			try-power-role = "sink";
606			source-pdos = <PDO_FIXED(5000, 500, PDO_FIXED_USB_COMM)>;
607			sink-pdos = <PDO_FIXED(5000, 500, PDO_FIXED_USB_COMM)
608				PDO_VAR(5000, 5000, 1000)>;
609			op-sink-microwatt = <10000000>;
610
611			ports {
612				#address-cells = <1>;
613				#size-cells = <0>;
614				port@1 {
615					reg = <1>;
616					usb_con_ss: endpoint {
617						remote-endpoint = <&dwc3_ss>;
618					};
619				};
620			};
621		};
622		port {
623			#address-cells = <1>;
624			#size-cells = <0>;
625
626			rt1711h_ep: endpoint@0 {
627				reg = <0>;
628				remote-endpoint = <&hikey_usb_ep1>;
629			};
630		};
631	};
632
633	adv7533: adv7533@39 {
634		status = "okay";
635		compatible = "adi,adv7533";
636		reg = <0x39>;
637		v1p2-supply = <&ldo3>;
638		vdd-supply = <&ldo3>;
639		interrupt-parent = <&gpio1>;
640		interrupts = <1 2>;
641		pd-gpio = <&gpio5 1 0>;
642		sel-gpio = <&gpio2 4 0>;
643		adi,dsi-lanes = <4>;
644		adi,disable-timing-generator;
645		#sound-dai-cells = <0>;
646
647		ports {
648			#address-cells = <1>;
649			#size-cells = <0>;
650			port@0 {
651				reg = <0>;
652				adv7533_in: endpoint {
653					remote-endpoint = <&dsi_out0>;
654				};
655			};
656			port@1 {
657				reg = <1>;
658			};
659		};
660	};
661
662};
663
664&i2c7 {
665	/* On Low speed expansion */
666	label = "LS-I2C1";
667	status = "okay";
668};
669
670&uart3 {
671	/* On Low speed expansion */
672	label = "LS-UART0";
673	status = "okay";
674};
675
676&uart4 {
677	status = "okay";
678
679	bluetooth {
680		compatible = "ti,wl1837-st";
681		enable-gpios = <&gpio15 6 GPIO_ACTIVE_HIGH>;
682		max-speed = <3000000>;
683	};
684};
685
686&uart6 {
687	/* On Low speed expansion */
688	label = "LS-UART1";
689	status = "okay";
690};
691
692&spi2 {
693	/* On Low speed expansion */
694	label = "LS-SPI0";
695	status = "okay";
696};
697
698&spi3 {
699	/* On High speed expansion */
700	label = "HS-SPI1";
701	status = "okay";
702};
703
704&dwmmc1 {
705	bus-width = <0x4>;
706	cap-sd-highspeed;
707	sd-uhs-sdr12;
708	sd-uhs-sdr25;
709	sd-uhs-sdr50;
710	sd-uhs-sdr104;
711	disable-wp;
712	cd-gpios = <&gpio25 3 GPIO_ACTIVE_LOW>;
713	pinctrl-names = "default";
714	pinctrl-0 = <&sd_pmx_func
715		     &sd_clk_cfg_func
716		     &sd_cfg_func>;
717	vmmc-supply = <&ldo16>;
718	vqmmc-supply = <&ldo9>;
719	status = "okay";
720};
721
722&dwmmc2 { /* WIFI */
723	bus-width = <0x4>;
724	non-removable;
725	broken-cd;
726	cap-power-off-card;
727	pinctrl-names = "default";
728	pinctrl-0 = <&sdio_pmx_func
729		     &sdio_clk_cfg_func
730		     &sdio_cfg_func>;
731	/* WL_EN */
732	vmmc-supply = <&wlan_en>;
733	status = "okay";
734
735	wlcore: wlcore@2 {
736		compatible = "ti,wl1837";
737		reg = <2>;      /* sdio func num */
738		/* WL_IRQ, GPIO_179_WL_WAKEUP_AP */
739		interrupt-parent = <&gpio22>;
740		interrupts = <3 IRQ_TYPE_EDGE_RISING>;
741	};
742};
743
744&dwc3 { /* USB */
745	dr_mode = "otg";
746	maximum-speed = "super-speed";
747	phy_type = "utmi";
748	snps,dis-del-phy-power-chg-quirk;
749	snps,lfps_filter_quirk;
750	snps,dis_u2_susphy_quirk;
751	snps,dis_u3_susphy_quirk;
752	snps,tx_de_emphasis_quirk;
753	snps,tx_de_emphasis = <1>;
754	snps,dis_enblslpm_quirk;
755	snps,gctl-reset-quirk;
756	usb-role-switch;
757	role-switch-default-mode = "host";
758	port {
759		#address-cells = <1>;
760		#size-cells = <0>;
761		dwc3_role_switch: endpoint@0 {
762			reg = <0>;
763			remote-endpoint = <&hikey_usb_ep0>;
764		};
765
766		dwc3_ss: endpoint@1 {
767			reg = <1>;
768			remote-endpoint = <&usb_con_ss>;
769		};
770	};
771};
772