xref: /freebsd-src/sys/contrib/device-tree/src/arm/mediatek/mt7623a-rfb-emmc.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright (c) 2017-2018 MediaTek Inc.
4*f126890aSEmmanuel Vadot * Author: Sean Wang <sean.wang@mediatek.com>
5*f126890aSEmmanuel Vadot *
6*f126890aSEmmanuel Vadot */
7*f126890aSEmmanuel Vadot
8*f126890aSEmmanuel Vadot/dts-v1/;
9*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
10*f126890aSEmmanuel Vadot#include "mt7623a.dtsi"
11*f126890aSEmmanuel Vadot#include "mt6323.dtsi"
12*f126890aSEmmanuel Vadot
13*f126890aSEmmanuel Vadot/ {
14*f126890aSEmmanuel Vadot	model = "MediaTek MT7623A with eMMC reference board";
15*f126890aSEmmanuel Vadot	compatible = "mediatek,mt7623a-rfb-emmc", "mediatek,mt7623";
16*f126890aSEmmanuel Vadot
17*f126890aSEmmanuel Vadot	aliases {
18*f126890aSEmmanuel Vadot		serial2 = &uart2;
19*f126890aSEmmanuel Vadot	};
20*f126890aSEmmanuel Vadot
21*f126890aSEmmanuel Vadot	chosen {
22*f126890aSEmmanuel Vadot		stdout-path = "serial2:115200n8";
23*f126890aSEmmanuel Vadot	};
24*f126890aSEmmanuel Vadot
25*f126890aSEmmanuel Vadot	cpus {
26*f126890aSEmmanuel Vadot		cpu@0 {
27*f126890aSEmmanuel Vadot			proc-supply = <&mt6323_vproc_reg>;
28*f126890aSEmmanuel Vadot		};
29*f126890aSEmmanuel Vadot
30*f126890aSEmmanuel Vadot		cpu@1 {
31*f126890aSEmmanuel Vadot			proc-supply = <&mt6323_vproc_reg>;
32*f126890aSEmmanuel Vadot		};
33*f126890aSEmmanuel Vadot
34*f126890aSEmmanuel Vadot		cpu@2 {
35*f126890aSEmmanuel Vadot			proc-supply = <&mt6323_vproc_reg>;
36*f126890aSEmmanuel Vadot		};
37*f126890aSEmmanuel Vadot
38*f126890aSEmmanuel Vadot		cpu@3 {
39*f126890aSEmmanuel Vadot			proc-supply = <&mt6323_vproc_reg>;
40*f126890aSEmmanuel Vadot		};
41*f126890aSEmmanuel Vadot	};
42*f126890aSEmmanuel Vadot
43*f126890aSEmmanuel Vadot	gpio-keys {
44*f126890aSEmmanuel Vadot		compatible = "gpio-keys";
45*f126890aSEmmanuel Vadot		pinctrl-names = "default";
46*f126890aSEmmanuel Vadot		pinctrl-0 = <&key_pins_a>;
47*f126890aSEmmanuel Vadot
48*f126890aSEmmanuel Vadot		button-factory {
49*f126890aSEmmanuel Vadot			label = "factory";
50*f126890aSEmmanuel Vadot			linux,code = <BTN_0>;
51*f126890aSEmmanuel Vadot			gpios = <&pio 256 GPIO_ACTIVE_LOW>;
52*f126890aSEmmanuel Vadot		};
53*f126890aSEmmanuel Vadot
54*f126890aSEmmanuel Vadot		button-wps {
55*f126890aSEmmanuel Vadot			label = "wps";
56*f126890aSEmmanuel Vadot			linux,code = <KEY_WPS_BUTTON>;
57*f126890aSEmmanuel Vadot			gpios = <&pio 257 GPIO_ACTIVE_HIGH>;
58*f126890aSEmmanuel Vadot		};
59*f126890aSEmmanuel Vadot	};
60*f126890aSEmmanuel Vadot
61*f126890aSEmmanuel Vadot	memory@80000000 {
62*f126890aSEmmanuel Vadot		device_type = "memory";
63*f126890aSEmmanuel Vadot		reg = <0 0x80000000 0 0x20000000>;
64*f126890aSEmmanuel Vadot	};
65*f126890aSEmmanuel Vadot
66*f126890aSEmmanuel Vadot	reg_1p8v: regulator-1p8v {
67*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
68*f126890aSEmmanuel Vadot		regulator-name = "fixed-1.8V";
69*f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
70*f126890aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
71*f126890aSEmmanuel Vadot		regulator-boot-on;
72*f126890aSEmmanuel Vadot		regulator-always-on;
73*f126890aSEmmanuel Vadot	};
74*f126890aSEmmanuel Vadot
75*f126890aSEmmanuel Vadot	reg_3p3v: regulator-3p3v {
76*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
77*f126890aSEmmanuel Vadot		regulator-name = "fixed-3.3V";
78*f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
79*f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
80*f126890aSEmmanuel Vadot		regulator-boot-on;
81*f126890aSEmmanuel Vadot		regulator-always-on;
82*f126890aSEmmanuel Vadot	};
83*f126890aSEmmanuel Vadot
84*f126890aSEmmanuel Vadot	reg_5v: regulator-5v {
85*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
86*f126890aSEmmanuel Vadot		regulator-name = "fixed-5V";
87*f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
88*f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
89*f126890aSEmmanuel Vadot		regulator-boot-on;
90*f126890aSEmmanuel Vadot		regulator-always-on;
91*f126890aSEmmanuel Vadot	};
92*f126890aSEmmanuel Vadot
93*f126890aSEmmanuel Vadot	sound {
94*f126890aSEmmanuel Vadot		compatible = "mediatek,mt2701-wm8960-machine";
95*f126890aSEmmanuel Vadot		mediatek,platform = <&afe>;
96*f126890aSEmmanuel Vadot		audio-routing =
97*f126890aSEmmanuel Vadot			"Headphone", "HP_L",
98*f126890aSEmmanuel Vadot			"Headphone", "HP_R",
99*f126890aSEmmanuel Vadot			"LINPUT1", "AMIC",
100*f126890aSEmmanuel Vadot			"RINPUT1", "AMIC";
101*f126890aSEmmanuel Vadot		mediatek,audio-codec = <&wm8960>;
102*f126890aSEmmanuel Vadot		pinctrl-names = "default";
103*f126890aSEmmanuel Vadot		pinctrl-0 = <&i2s0_pins_a>;
104*f126890aSEmmanuel Vadot	};
105*f126890aSEmmanuel Vadot};
106*f126890aSEmmanuel Vadot
107*f126890aSEmmanuel Vadot&btif {
108*f126890aSEmmanuel Vadot	status = "okay";
109*f126890aSEmmanuel Vadot};
110*f126890aSEmmanuel Vadot
111*f126890aSEmmanuel Vadot&crypto {
112*f126890aSEmmanuel Vadot	status = "okay";
113*f126890aSEmmanuel Vadot};
114*f126890aSEmmanuel Vadot
115*f126890aSEmmanuel Vadot&switch0 {
116*f126890aSEmmanuel Vadot	ports {
117*f126890aSEmmanuel Vadot		port@0 {
118*f126890aSEmmanuel Vadot			status = "okay";
119*f126890aSEmmanuel Vadot			label = "lan0";
120*f126890aSEmmanuel Vadot		};
121*f126890aSEmmanuel Vadot
122*f126890aSEmmanuel Vadot		port@1 {
123*f126890aSEmmanuel Vadot			status = "okay";
124*f126890aSEmmanuel Vadot			label = "lan1";
125*f126890aSEmmanuel Vadot		};
126*f126890aSEmmanuel Vadot
127*f126890aSEmmanuel Vadot		port@2 {
128*f126890aSEmmanuel Vadot			status = "okay";
129*f126890aSEmmanuel Vadot			label = "lan2";
130*f126890aSEmmanuel Vadot		};
131*f126890aSEmmanuel Vadot
132*f126890aSEmmanuel Vadot		port@3 {
133*f126890aSEmmanuel Vadot			status = "okay";
134*f126890aSEmmanuel Vadot			label = "lan3";
135*f126890aSEmmanuel Vadot		};
136*f126890aSEmmanuel Vadot
137*f126890aSEmmanuel Vadot		port@4 {
138*f126890aSEmmanuel Vadot			status = "okay";
139*f126890aSEmmanuel Vadot			label = "wan";
140*f126890aSEmmanuel Vadot		};
141*f126890aSEmmanuel Vadot	};
142*f126890aSEmmanuel Vadot};
143*f126890aSEmmanuel Vadot
144*f126890aSEmmanuel Vadot&i2c0 {
145*f126890aSEmmanuel Vadot	pinctrl-names = "default";
146*f126890aSEmmanuel Vadot	pinctrl-0 = <&i2c0_pins_a>;
147*f126890aSEmmanuel Vadot	status = "okay";
148*f126890aSEmmanuel Vadot};
149*f126890aSEmmanuel Vadot
150*f126890aSEmmanuel Vadot&i2c1 {
151*f126890aSEmmanuel Vadot	pinctrl-names = "default";
152*f126890aSEmmanuel Vadot	pinctrl-0 = <&i2c1_pins_b>;
153*f126890aSEmmanuel Vadot	status = "okay";
154*f126890aSEmmanuel Vadot
155*f126890aSEmmanuel Vadot	wm8960: wm8960@1a {
156*f126890aSEmmanuel Vadot		compatible = "wlf,wm8960";
157*f126890aSEmmanuel Vadot		reg = <0x1a>;
158*f126890aSEmmanuel Vadot	};
159*f126890aSEmmanuel Vadot};
160*f126890aSEmmanuel Vadot
161*f126890aSEmmanuel Vadot&i2c2 {
162*f126890aSEmmanuel Vadot	pinctrl-names = "default";
163*f126890aSEmmanuel Vadot	pinctrl-0 = <&i2c2_pins_b>;
164*f126890aSEmmanuel Vadot	status = "okay";
165*f126890aSEmmanuel Vadot};
166*f126890aSEmmanuel Vadot
167*f126890aSEmmanuel Vadot&mmc0 {
168*f126890aSEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
169*f126890aSEmmanuel Vadot	pinctrl-0 = <&mmc0_pins_default>;
170*f126890aSEmmanuel Vadot	pinctrl-1 = <&mmc0_pins_uhs>;
171*f126890aSEmmanuel Vadot	status = "okay";
172*f126890aSEmmanuel Vadot	bus-width = <8>;
173*f126890aSEmmanuel Vadot	max-frequency = <50000000>;
174*f126890aSEmmanuel Vadot	cap-mmc-highspeed;
175*f126890aSEmmanuel Vadot	vmmc-supply = <&reg_3p3v>;
176*f126890aSEmmanuel Vadot	vqmmc-supply = <&reg_1p8v>;
177*f126890aSEmmanuel Vadot	non-removable;
178*f126890aSEmmanuel Vadot};
179*f126890aSEmmanuel Vadot
180*f126890aSEmmanuel Vadot&mmc1 {
181*f126890aSEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
182*f126890aSEmmanuel Vadot	pinctrl-0 = <&mmc1_pins_default>;
183*f126890aSEmmanuel Vadot	pinctrl-1 = <&mmc1_pins_uhs>;
184*f126890aSEmmanuel Vadot	status = "okay";
185*f126890aSEmmanuel Vadot	bus-width = <4>;
186*f126890aSEmmanuel Vadot	max-frequency = <50000000>;
187*f126890aSEmmanuel Vadot	cap-sd-highspeed;
188*f126890aSEmmanuel Vadot	cd-gpios = <&pio 261 GPIO_ACTIVE_LOW>;
189*f126890aSEmmanuel Vadot	vmmc-supply = <&reg_3p3v>;
190*f126890aSEmmanuel Vadot	vqmmc-supply = <&reg_3p3v>;
191*f126890aSEmmanuel Vadot};
192*f126890aSEmmanuel Vadot
193*f126890aSEmmanuel Vadot&pcie {
194*f126890aSEmmanuel Vadot	pinctrl-names = "default";
195*f126890aSEmmanuel Vadot	pinctrl-0 = <&pcie_default>;
196*f126890aSEmmanuel Vadot	status = "okay";
197*f126890aSEmmanuel Vadot
198*f126890aSEmmanuel Vadot	pcie@0,0 {
199*f126890aSEmmanuel Vadot		status = "okay";
200*f126890aSEmmanuel Vadot	};
201*f126890aSEmmanuel Vadot
202*f126890aSEmmanuel Vadot	pcie@1,0 {
203*f126890aSEmmanuel Vadot		status = "okay";
204*f126890aSEmmanuel Vadot	};
205*f126890aSEmmanuel Vadot};
206*f126890aSEmmanuel Vadot
207*f126890aSEmmanuel Vadot&pcie0_phy {
208*f126890aSEmmanuel Vadot	status = "okay";
209*f126890aSEmmanuel Vadot};
210*f126890aSEmmanuel Vadot
211*f126890aSEmmanuel Vadot&pcie1_phy {
212*f126890aSEmmanuel Vadot	status = "okay";
213*f126890aSEmmanuel Vadot};
214*f126890aSEmmanuel Vadot
215*f126890aSEmmanuel Vadot&pwm {
216*f126890aSEmmanuel Vadot	pinctrl-names = "default";
217*f126890aSEmmanuel Vadot	pinctrl-0 = <&pwm_pins_a>;
218*f126890aSEmmanuel Vadot	status = "okay";
219*f126890aSEmmanuel Vadot};
220*f126890aSEmmanuel Vadot
221*f126890aSEmmanuel Vadot&spi0 {
222*f126890aSEmmanuel Vadot	pinctrl-names = "default";
223*f126890aSEmmanuel Vadot	pinctrl-0 = <&spi0_pins_a>;
224*f126890aSEmmanuel Vadot	status = "okay";
225*f126890aSEmmanuel Vadot};
226*f126890aSEmmanuel Vadot
227*f126890aSEmmanuel Vadot&spi1 {
228*f126890aSEmmanuel Vadot	pinctrl-names = "default";
229*f126890aSEmmanuel Vadot	pinctrl-0 = <&spi1_pins_a>;
230*f126890aSEmmanuel Vadot	status = "okay";
231*f126890aSEmmanuel Vadot};
232*f126890aSEmmanuel Vadot
233*f126890aSEmmanuel Vadot&uart2 {
234*f126890aSEmmanuel Vadot	pinctrl-names = "default";
235*f126890aSEmmanuel Vadot	pinctrl-0 = <&uart2_pins_b>;
236*f126890aSEmmanuel Vadot	status = "okay";
237*f126890aSEmmanuel Vadot};
238*f126890aSEmmanuel Vadot
239*f126890aSEmmanuel Vadot&usb1 {
240*f126890aSEmmanuel Vadot	vusb33-supply = <&reg_3p3v>;
241*f126890aSEmmanuel Vadot	vbus-supply = <&reg_5v>;
242*f126890aSEmmanuel Vadot	status = "okay";
243*f126890aSEmmanuel Vadot};
244*f126890aSEmmanuel Vadot
245*f126890aSEmmanuel Vadot&u3phy1 {
246*f126890aSEmmanuel Vadot	status = "okay";
247*f126890aSEmmanuel Vadot};
248