Merge tag 'usb-5.11-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
[linux/fpc-iii.git] / arch / arm / boot / dts / mt2701-evb.dts
blobd1535f385f361d992a3c383c9d2ce7d495e45e7e
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (c) 2015 MediaTek Inc.
4  * Author: Erin Lo <erin.lo@mediatek.com>
5  *
6  */
8 /dts-v1/;
9 #include <dt-bindings/gpio/gpio.h>
10 #include "mt2701.dtsi"
12 / {
13         model = "MediaTek MT2701 evaluation board";
14         compatible = "mediatek,mt2701-evb", "mediatek,mt2701";
16         memory {
17                 device_type = "memory";
18                 reg = <0 0x80000000 0 0x40000000>;
19         };
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         };
51         bt_sco_codec:bt_sco_codec {
52                 compatible = "linux,bt-sco";
53         };
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         };
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         };
76 &auxadc {
77         status = "okay";
80 &bls {
81         status = "okay";
82         pinctrl-names = "default";
83         pinctrl-0 = <&pwm_bls_gpio>;
86 &i2c0 {
87         pinctrl-names = "default";
88         pinctrl-0 = <&i2c0_pins_a>;
89         status = "okay";
92 &i2c1 {
93         pinctrl-names = "default";
94         pinctrl-0 = <&i2c1_pins_a>;
95         status = "okay";
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         };
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         };
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         };
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         };
135         pwm_bls_gpio: pwm_bls_gpio {
136                 pins_cmd_dat {
137                         pinmux = <MT2701_PIN_208_AUD_EXT_CK1__FUNC_DISP_PWM>;
138                 };
139         };
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         };
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         };
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         };
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         };
197 &spi0 {
198         pinctrl-names = "default";
199         pinctrl-0 = <&spi_pins_a>;
200         status = "disabled";
203 &spi1 {
204         pinctrl-names = "default";
205         pinctrl-0 = <&spi_pins_b>;
206         status = "disabled";
209 &spi2 {
210         pinctrl-names = "default";
211         pinctrl-0 = <&spi_pins_c>;
212         status = "disabled";
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         };
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         };
240 &uart0 {
241         status = "okay";
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         };