blob: 9c7325f1893347ab5608f26e89440fad13787b0c [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (c) 2015 MediaTek Inc.
4 * Author: Erin Lo <erin.lo@mediatek.com>
5 *
6 */
7
8/dts-v1/;
9#include <dt-bindings/gpio/gpio.h>
10#include "mt2701.dtsi"
11
12/ {
13 model = "MediaTek MT2701 evaluation board";
14 compatible = "mediatek,mt2701-evb", "mediatek,mt2701";
15
16 memory {
17 device_type = "memory";
18 reg = <0 0x80000000 0 0x40000000>;
19 };
20
21 sound:sound {
22 compatible = "mediatek,mt2701-cs42448-machine";
23 mediatek,platform = <&afe>;
24 /* CS42448 Machine name */
25 audio-routing =
26 "Line Out Jack", "AOUT1L",
27 "Line Out Jack", "AOUT1R",
28 "Line Out Jack", "AOUT2L",
29 "Line Out Jack", "AOUT2R",
30 "Line Out Jack", "AOUT3L",
31 "Line Out Jack", "AOUT3R",
32 "Line Out Jack", "AOUT4L",
33 "Line Out Jack", "AOUT4R",
34 "AIN1L", "AMIC",
35 "AIN1R", "AMIC",
36 "AIN2L", "Tuner In",
37 "AIN2R", "Tuner In",
38 "AIN3L", "Satellite Tuner In",
39 "AIN3R", "Satellite Tuner In",
40 "AIN3L", "AUX In",
41 "AIN3R", "AUX In";
42 mediatek,audio-codec = <&cs42448>;
43 mediatek,audio-codec-bt-mrg = <&bt_sco_codec>;
44 pinctrl-names = "default";
45 pinctrl-0 = <&aud_pins_default>;
46 i2s1-in-sel-gpio1 = <&pio 53 0>;
47 i2s1-in-sel-gpio2 = <&pio 54 0>;
48 status = "okay";
49 };
50
51 bt_sco_codec:bt_sco_codec {
52 compatible = "linux,bt-sco";
53 };
54
55 backlight_lcd: backlight_lcd {
56 compatible = "pwm-backlight";
57 pwms = <&bls 0 100000>;
58 brightness-levels = <
59 0 16 32 48 64 80 96 112
60 128 144 160 176 192 208 224 240
61 255
62 >;
63 default-brightness-level = <9>;
64 };
65
66 usb_vbus: regulator@0 {
67 compatible = "regulator-fixed";
68 regulator-name = "usb_vbus";
69 regulator-min-microvolt = <5000000>;
70 regulator-max-microvolt = <5000000>;
71 gpio = <&pio 45 GPIO_ACTIVE_HIGH>;
72 enable-active-high;
73 };
74};
75
76&auxadc {
77 status = "okay";
78};
79
80&bls {
81 status = "okay";
82 pinctrl-names = "default";
83 pinctrl-0 = <&pwm_bls_gpio>;
84};
85
86&i2c0 {
87 pinctrl-names = "default";
88 pinctrl-0 = <&i2c0_pins_a>;
89 status = "okay";
90};
91
92&i2c1 {
93 pinctrl-names = "default";
94 pinctrl-0 = <&i2c1_pins_a>;
95 status = "okay";
96};
97
98&i2c2 {
99 pinctrl-names = "default";
100 pinctrl-0 = <&i2c2_pins_a>;
101 status = "okay";
102 cs42448: cs42448@48 {
103 compatible = "cirrus,cs42448";
104 reg = <0x48>;
105 clocks = <&topckgen CLK_TOP_AUD_I2S1_MCLK>;
106 clock-names = "mclk";
107 };
108};
109
110&pio {
111 i2c0_pins_a: i2c0@0 {
112 pins1 {
113 pinmux = <MT2701_PIN_75_SDA0__FUNC_SDA0>,
114 <MT2701_PIN_76_SCL0__FUNC_SCL0>;
115 bias-disable;
116 };
117 };
118
119 i2c1_pins_a: i2c1@0 {
120 pins1 {
121 pinmux = <MT2701_PIN_57_SDA1__FUNC_SDA1>,
122 <MT2701_PIN_58_SCL1__FUNC_SCL1>;
123 bias-disable;
124 };
125 };
126
127 i2c2_pins_a: i2c2@0 {
128 pins1 {
129 pinmux = <MT2701_PIN_77_SDA2__FUNC_SDA2>,
130 <MT2701_PIN_78_SCL2__FUNC_SCL2>;
131 bias-disable;
132 };
133 };
134
135 pwm_bls_gpio: pwm_bls_gpio {
136 pins_cmd_dat {
137 pinmux = <MT2701_PIN_208_AUD_EXT_CK1__FUNC_DISP_PWM>;
138 };
139 };
140
141 spi_pins_a: spi0@0 {
142 pins_spi {
143 pinmux = <MT2701_PIN_53_SPI0_CSN__FUNC_SPI0_CS>,
144 <MT2701_PIN_54_SPI0_CK__FUNC_SPI0_CK>,
145 <MT2701_PIN_55_SPI0_MI__FUNC_SPI0_MI>,
146 <MT2701_PIN_56_SPI0_MO__FUNC_SPI0_MO>;
147 bias-disable;
148 };
149 };
150
151 aud_pins_default: audiodefault {
152 pins_cmd_dat {
153 pinmux = <MT2701_PIN_49_I2S0_DATA__FUNC_I2S0_DATA>,
154 <MT2701_PIN_72_I2S0_DATA_IN__FUNC_I2S0_DATA_IN>,
155 <MT2701_PIN_73_I2S0_LRCK__FUNC_I2S0_LRCK>,
156 <MT2701_PIN_74_I2S0_BCK__FUNC_I2S0_BCK>,
157 <MT2701_PIN_126_I2S0_MCLK__FUNC_I2S0_MCLK>,
158 <MT2701_PIN_33_I2S1_DATA__FUNC_I2S1_DATA>,
159 <MT2701_PIN_34_I2S1_DATA_IN__FUNC_I2S1_DATA_IN>,
160 <MT2701_PIN_35_I2S1_BCK__FUNC_I2S1_BCK>,
161 <MT2701_PIN_36_I2S1_LRCK__FUNC_I2S1_LRCK>,
162 <MT2701_PIN_37_I2S1_MCLK__FUNC_I2S1_MCLK>,
163 <MT2701_PIN_203_PWM0__FUNC_I2S2_DATA>,
164 <MT2701_PIN_204_PWM1__FUNC_I2S3_DATA>,
165 <MT2701_PIN_53_SPI0_CSN__FUNC_GPIO53>,
166 <MT2701_PIN_54_SPI0_CK__FUNC_GPIO54>,
167 <MT2701_PIN_18_PCM_CLK__FUNC_MRG_CLK>,
168 <MT2701_PIN_19_PCM_SYNC__FUNC_MRG_SYNC>,
169 <MT2701_PIN_20_PCM_RX__FUNC_MRG_TX>,
170 <MT2701_PIN_21_PCM_TX__FUNC_MRG_RX>;
171 drive-strength = <MTK_DRIVE_12mA>;
172 bias-pull-down;
173 };
174 };
175
176 spi_pins_b: spi1@0 {
177 pins_spi {
178 pinmux = <MT2701_PIN_7_SPI1_CSN__FUNC_SPI1_CS>,
179 <MT2701_PIN_8_SPI1_MI__FUNC_SPI1_MI>,
180 <MT2701_PIN_9_SPI1_MO__FUNC_SPI1_MO>,
181 <MT2701_PIN_199_SPI1_CLK__FUNC_SPI1_CK>;
182 bias-disable;
183 };
184 };
185
186 spi_pins_c: spi2@0 {
187 pins_spi {
188 pinmux = <MT2701_PIN_101_SPI2_CSN__FUNC_SPI2_CS>,
189 <MT2701_PIN_102_SPI2_MI__FUNC_SPI2_MI>,
190 <MT2701_PIN_103_SPI2_MO__FUNC_SPI2_MO>,
191 <MT2701_PIN_104_SPI2_CLK__FUNC_SPI2_CK>;
192 bias-disable;
193 };
194 };
195};
196
197&spi0 {
198 pinctrl-names = "default";
199 pinctrl-0 = <&spi_pins_a>;
200 status = "disabled";
201};
202
203&spi1 {
204 pinctrl-names = "default";
205 pinctrl-0 = <&spi_pins_b>;
206 status = "disabled";
207};
208
209&spi2 {
210 pinctrl-names = "default";
211 pinctrl-0 = <&spi_pins_c>;
212 status = "disabled";
213};
214
215&nor_flash {
216 pinctrl-names = "default";
217 pinctrl-0 = <&nor_pins_default>;
218 status = "okay";
219 flash@0 {
220 compatible = "jedec,spi-nor";
221 reg = <0>;
222 };
223};
224
225&pio {
226 nor_pins_default: nor {
227 pins1 {
228 pinmux = <MT2701_PIN_240_EXT_XCS__FUNC_EXT_XCS>,
229 <MT2701_PIN_241_EXT_SCK__FUNC_EXT_SCK>,
230 <MT2701_PIN_239_EXT_SDIO0__FUNC_EXT_SDIO0>,
231 <MT2701_PIN_238_EXT_SDIO1__FUNC_EXT_SDIO1>,
232 <MT2701_PIN_237_EXT_SDIO2__FUNC_EXT_SDIO2>,
233 <MT2701_PIN_236_EXT_SDIO3__FUNC_EXT_SDIO3>;
234 drive-strength = <MTK_DRIVE_4mA>;
235 bias-pull-up;
236 };
237 };
238};
239
240&uart0 {
241 status = "okay";
242};
243
244&usb2 {
245 status = "okay";
246 usb-role-switch;
247 connector {
248 compatible = "gpio-usb-b-connector", "usb-b-connector";
249 type = "micro";
250 id-gpios = <&pio 44 GPIO_ACTIVE_HIGH>;
251 vbus-supply = <&usb_vbus>;
252 };
253};