1/*
2 * Copyright (c) 2017 MediaTek Inc.
3 * Author: YT Shen <yt.shen@mediatek.com>
4 *
5 * SPDX-License-Identifier: (GPL-2.0 OR MIT)
6 */
7
8/dts-v1/;
9#include <dt-bindings/gpio/gpio.h>
10#include "mt2712e.dtsi"
11
12/ {
13	model = "MediaTek MT2712 evaluation board";
14	compatible = "mediatek,mt2712-evb", "mediatek,mt2712";
15
16	aliases {
17		serial0 = &uart0;
18	};
19
20	memory@40000000 {
21		device_type = "memory";
22		reg = <0 0x40000000 0 0x80000000>;
23	};
24
25	chosen {
26		stdout-path = "serial0:921600n8";
27	};
28
29	cpus_fixed_vproc0: fixedregulator@0 {
30		compatible = "regulator-fixed";
31		regulator-name = "vproc_buck0";
32		regulator-min-microvolt = <1000000>;
33		regulator-max-microvolt = <1000000>;
34	};
35
36	cpus_fixed_vproc1: fixedregulator@1 {
37		compatible = "regulator-fixed";
38		regulator-name = "vproc_buck1";
39		regulator-min-microvolt = <1000000>;
40		regulator-max-microvolt = <1000000>;
41	};
42
43	extcon_usb: extcon_iddig {
44		compatible = "linux,extcon-usb-gpio";
45		id-gpio = <&pio 12 GPIO_ACTIVE_HIGH>;
46	};
47
48	extcon_usb1: extcon_iddig1 {
49		compatible = "linux,extcon-usb-gpio";
50		id-gpio = <&pio 14 GPIO_ACTIVE_HIGH>;
51	};
52
53	usb_p0_vbus: regulator@2 {
54		compatible = "regulator-fixed";
55		regulator-name = "p0_vbus";
56		regulator-min-microvolt = <5000000>;
57		regulator-max-microvolt = <5000000>;
58		gpio = <&pio 13 GPIO_ACTIVE_HIGH>;
59		enable-active-high;
60	};
61
62	usb_p1_vbus: regulator@3 {
63		compatible = "regulator-fixed";
64		regulator-name = "p1_vbus";
65		regulator-min-microvolt = <5000000>;
66		regulator-max-microvolt = <5000000>;
67		gpio = <&pio 15 GPIO_ACTIVE_HIGH>;
68		enable-active-high;
69	};
70
71	usb_p2_vbus: regulator@4 {
72		compatible = "regulator-fixed";
73		regulator-name = "p2_vbus";
74		regulator-min-microvolt = <5000000>;
75		regulator-max-microvolt = <5000000>;
76		gpio = <&pio 16 GPIO_ACTIVE_HIGH>;
77		enable-active-high;
78	};
79
80	usb_p3_vbus: regulator@5 {
81		compatible = "regulator-fixed";
82		regulator-name = "p3_vbus";
83		regulator-min-microvolt = <5000000>;
84		regulator-max-microvolt = <5000000>;
85		gpio = <&pio 17 GPIO_ACTIVE_HIGH>;
86		enable-active-high;
87		regulator-always-on;
88	};
89
90};
91
92&auxadc {
93	status = "okay";
94};
95
96&cpu0 {
97	proc-supply = <&cpus_fixed_vproc0>;
98};
99
100&cpu1 {
101	proc-supply = <&cpus_fixed_vproc0>;
102};
103
104&cpu2 {
105	proc-supply = <&cpus_fixed_vproc1>;
106};
107
108&pio {
109	usb0_id_pins_float: usb0_iddig {
110		pins_iddig {
111			pinmux = <MT2712_PIN_12_IDDIG_P0__FUNC_IDDIG_A>;
112			bias-pull-up;
113		};
114	};
115
116	usb1_id_pins_float: usb1_iddig {
117		pins_iddig {
118			pinmux = <MT2712_PIN_14_IDDIG_P1__FUNC_IDDIG_B>;
119			bias-pull-up;
120		};
121	};
122};
123
124&ssusb {
125	vbus-supply = <&usb_p0_vbus>;
126	extcon = <&extcon_usb>;
127	dr_mode = "otg";
128	wakeup-source;
129	mediatek,u3p-dis-msk = <0x1>;
130	//enable-manual-drd;
131	//maximum-speed = "full-speed";
132	pinctrl-names = "default";
133	pinctrl-0 = <&usb0_id_pins_float>;
134	status = "okay";
135};
136
137&ssusb1 {
138	vbus-supply = <&usb_p1_vbus>;
139	extcon = <&extcon_usb1>;
140	dr_mode = "otg";
141	//mediatek,u3p-dis-msk = <0x1>;
142	enable-manual-drd;
143	wakeup-source;
144	//maximum-speed = "full-speed";
145	pinctrl-names = "default";
146	pinctrl-0 = <&usb1_id_pins_float>;
147	status = "okay";
148};
149
150&uart0 {
151	status = "okay";
152};
153
154&usb_host0 {
155	vbus-supply = <&usb_p2_vbus>;
156	status = "okay";
157};
158
159&usb_host1 {
160	status = "okay";
161};
162