1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2014 MediaTek Inc.
4 * Author: Eddie Huang <eddie.huang@mediatek.com>
8 #include <dt-bindings/gpio/gpio.h>
12 model = "MediaTek MT8173 evaluation board";
13 compatible = "mediatek,mt8173-evb", "mediatek,mt8173";
23 device_type = "memory";
24 reg = <0 0x40000000 0 0x80000000>;
30 compatible = "hdmi-connector";
35 hdmi_connector_in: endpoint {
36 remote-endpoint = <&hdmi0_out>;
41 extcon_usb: extcon_iddig {
42 compatible = "linux,extcon-usb-gpio";
43 id-gpio = <&pio 16 GPIO_ACTIVE_HIGH>;
46 usb_p1_vbus: regulator@0 {
47 compatible = "regulator-fixed";
48 regulator-name = "usb_vbus";
49 regulator-min-microvolt = <5000000>;
50 regulator-max-microvolt = <5000000>;
51 gpio = <&pio 130 GPIO_ACTIVE_HIGH>;
55 usb_p0_vbus: regulator@1 {
56 compatible = "regulator-fixed";
57 regulator-name = "vbus";
58 regulator-min-microvolt = <5000000>;
59 regulator-max-microvolt = <5000000>;
60 gpio = <&pio 9 GPIO_ACTIVE_HIGH>;
70 proc-supply = <&mt6397_vpca15_reg>;
74 proc-supply = <&mt6397_vpca15_reg>;
78 proc-supply = <&da9211_vcpu_reg>;
79 sram-supply = <&mt6397_vsramca7_reg>;
83 proc-supply = <&da9211_vcpu_reg>;
84 sram-supply = <&mt6397_vsramca7_reg>;
102 hdmi0_out: endpoint {
103 remote-endpoint = <&hdmi_connector_in>;
113 compatible = "dlg,da9211";
117 da9211_vcpu_reg: BUCKA {
118 regulator-name = "VBUCKA";
119 regulator-min-microvolt = < 700000>;
120 regulator-max-microvolt = <1310000>;
121 regulator-min-microamp = <2000000>;
122 regulator-max-microamp = <4400000>;
123 regulator-ramp-delay = <10000>;
127 da9211_vgpu_reg: BUCKB {
128 regulator-name = "VBUCKB";
129 regulator-min-microvolt = < 700000>;
130 regulator-max-microvolt = <1310000>;
131 regulator-min-microamp = <2000000>;
132 regulator-max-microamp = <3000000>;
133 regulator-ramp-delay = <10000>;
141 pinctrl-names = "default", "state_uhs";
142 pinctrl-0 = <&mmc0_pins_default>;
143 pinctrl-1 = <&mmc0_pins_uhs>;
145 max-frequency = <50000000>;
147 mediatek,hs200-cmd-int-delay=<26>;
148 mediatek,hs400-cmd-int-delay=<14>;
149 mediatek,hs400-cmd-resp-sel-rising;
150 vmmc-supply = <&mt6397_vemc_3v3_reg>;
151 vqmmc-supply = <&mt6397_vio18_reg>;
157 pinctrl-names = "default", "state_uhs";
158 pinctrl-0 = <&mmc1_pins_default>;
159 pinctrl-1 = <&mmc1_pins_uhs>;
161 max-frequency = <50000000>;
164 cd-gpios = <&pio 132 0>;
165 vmmc-supply = <&mt6397_vmch_reg>;
166 vqmmc-supply = <&mt6397_vmc_reg>;
170 disp_pwm0_pins: disp_pwm0_pins {
172 pinmux = <MT8173_PIN_87_DISP_PWM0__FUNC_DISP_PWM0>;
177 mmc0_pins_default: mmc0default {
179 pinmux = <MT8173_PIN_57_MSDC0_DAT0__FUNC_MSDC0_DAT0>,
180 <MT8173_PIN_58_MSDC0_DAT1__FUNC_MSDC0_DAT1>,
181 <MT8173_PIN_59_MSDC0_DAT2__FUNC_MSDC0_DAT2>,
182 <MT8173_PIN_60_MSDC0_DAT3__FUNC_MSDC0_DAT3>,
183 <MT8173_PIN_61_MSDC0_DAT4__FUNC_MSDC0_DAT4>,
184 <MT8173_PIN_62_MSDC0_DAT5__FUNC_MSDC0_DAT5>,
185 <MT8173_PIN_63_MSDC0_DAT6__FUNC_MSDC0_DAT6>,
186 <MT8173_PIN_64_MSDC0_DAT7__FUNC_MSDC0_DAT7>,
187 <MT8173_PIN_66_MSDC0_CMD__FUNC_MSDC0_CMD>;
193 pinmux = <MT8173_PIN_65_MSDC0_CLK__FUNC_MSDC0_CLK>;
198 pinmux = <MT8173_PIN_68_MSDC0_RST___FUNC_MSDC0_RSTB>;
203 mmc1_pins_default: mmc1default {
205 pinmux = <MT8173_PIN_73_MSDC1_DAT0__FUNC_MSDC1_DAT0>,
206 <MT8173_PIN_74_MSDC1_DAT1__FUNC_MSDC1_DAT1>,
207 <MT8173_PIN_75_MSDC1_DAT2__FUNC_MSDC1_DAT2>,
208 <MT8173_PIN_76_MSDC1_DAT3__FUNC_MSDC1_DAT3>,
209 <MT8173_PIN_78_MSDC1_CMD__FUNC_MSDC1_CMD>;
211 drive-strength = <MTK_DRIVE_4mA>;
212 bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
216 pinmux = <MT8173_PIN_77_MSDC1_CLK__FUNC_MSDC1_CLK>;
218 drive-strength = <MTK_DRIVE_4mA>;
222 pinmux = <MT8173_PIN_132_I2S0_DATA1__FUNC_GPIO132>;
227 mmc0_pins_uhs: mmc0 {
229 pinmux = <MT8173_PIN_57_MSDC0_DAT0__FUNC_MSDC0_DAT0>,
230 <MT8173_PIN_58_MSDC0_DAT1__FUNC_MSDC0_DAT1>,
231 <MT8173_PIN_59_MSDC0_DAT2__FUNC_MSDC0_DAT2>,
232 <MT8173_PIN_60_MSDC0_DAT3__FUNC_MSDC0_DAT3>,
233 <MT8173_PIN_61_MSDC0_DAT4__FUNC_MSDC0_DAT4>,
234 <MT8173_PIN_62_MSDC0_DAT5__FUNC_MSDC0_DAT5>,
235 <MT8173_PIN_63_MSDC0_DAT6__FUNC_MSDC0_DAT6>,
236 <MT8173_PIN_64_MSDC0_DAT7__FUNC_MSDC0_DAT7>,
237 <MT8173_PIN_66_MSDC0_CMD__FUNC_MSDC0_CMD>;
239 drive-strength = <MTK_DRIVE_2mA>;
240 bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
244 pinmux = <MT8173_PIN_65_MSDC0_CLK__FUNC_MSDC0_CLK>;
245 drive-strength = <MTK_DRIVE_2mA>;
246 bias-pull-down = <MTK_PUPD_SET_R1R0_01>;
250 pinmux = <MT8173_PIN_68_MSDC0_RST___FUNC_MSDC0_RSTB>;
255 mmc1_pins_uhs: mmc1 {
257 pinmux = <MT8173_PIN_73_MSDC1_DAT0__FUNC_MSDC1_DAT0>,
258 <MT8173_PIN_74_MSDC1_DAT1__FUNC_MSDC1_DAT1>,
259 <MT8173_PIN_75_MSDC1_DAT2__FUNC_MSDC1_DAT2>,
260 <MT8173_PIN_76_MSDC1_DAT3__FUNC_MSDC1_DAT3>,
261 <MT8173_PIN_78_MSDC1_CMD__FUNC_MSDC1_CMD>;
263 drive-strength = <MTK_DRIVE_4mA>;
264 bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
268 pinmux = <MT8173_PIN_77_MSDC1_CLK__FUNC_MSDC1_CLK>;
269 drive-strength = <MTK_DRIVE_4mA>;
270 bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
274 usb_id_pins_float: usb_iddig_pull_up {
276 pinmux = <MT8173_PIN_16_IDDIG__FUNC_IDDIG>;
281 usb_id_pins_ground: usb_iddig_pull_down {
283 pinmux = <MT8173_PIN_16_IDDIG__FUNC_IDDIG>;
290 pinctrl-names = "default";
291 pinctrl-0 = <&disp_pwm0_pins>;
296 /* Only MT8173 E1 needs USB power domain */
297 power-domains = <&scpsys MT8173_POWER_DOMAIN_USB>;
300 compatible = "mediatek,mt6397";
301 interrupt-parent = <&pio>;
302 interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
303 interrupt-controller;
304 #interrupt-cells = <2>;
306 mt6397regulator: mt6397regulator {
307 compatible = "mediatek,mt6397-regulator";
309 mt6397_vpca15_reg: buck_vpca15 {
310 regulator-compatible = "buck_vpca15";
311 regulator-name = "vpca15";
312 regulator-min-microvolt = < 700000>;
313 regulator-max-microvolt = <1350000>;
314 regulator-ramp-delay = <12500>;
318 mt6397_vpca7_reg: buck_vpca7 {
319 regulator-compatible = "buck_vpca7";
320 regulator-name = "vpca7";
321 regulator-min-microvolt = < 700000>;
322 regulator-max-microvolt = <1350000>;
323 regulator-ramp-delay = <12500>;
324 regulator-enable-ramp-delay = <115>;
327 mt6397_vsramca15_reg: buck_vsramca15 {
328 regulator-compatible = "buck_vsramca15";
329 regulator-name = "vsramca15";
330 regulator-min-microvolt = < 700000>;
331 regulator-max-microvolt = <1350000>;
332 regulator-ramp-delay = <12500>;
336 mt6397_vsramca7_reg: buck_vsramca7 {
337 regulator-compatible = "buck_vsramca7";
338 regulator-name = "vsramca7";
339 regulator-min-microvolt = < 700000>;
340 regulator-max-microvolt = <1350000>;
341 regulator-ramp-delay = <12500>;
345 mt6397_vcore_reg: buck_vcore {
346 regulator-compatible = "buck_vcore";
347 regulator-name = "vcore";
348 regulator-min-microvolt = < 700000>;
349 regulator-max-microvolt = <1350000>;
350 regulator-ramp-delay = <12500>;
354 mt6397_vgpu_reg: buck_vgpu {
355 regulator-compatible = "buck_vgpu";
356 regulator-name = "vgpu";
357 regulator-min-microvolt = < 700000>;
358 regulator-max-microvolt = <1350000>;
359 regulator-ramp-delay = <12500>;
360 regulator-enable-ramp-delay = <115>;
363 mt6397_vdrm_reg: buck_vdrm {
364 regulator-compatible = "buck_vdrm";
365 regulator-name = "vdrm";
366 regulator-min-microvolt = <1200000>;
367 regulator-max-microvolt = <1400000>;
368 regulator-ramp-delay = <12500>;
372 mt6397_vio18_reg: buck_vio18 {
373 regulator-compatible = "buck_vio18";
374 regulator-name = "vio18";
375 regulator-min-microvolt = <1620000>;
376 regulator-max-microvolt = <1980000>;
377 regulator-ramp-delay = <12500>;
381 mt6397_vtcxo_reg: ldo_vtcxo {
382 regulator-compatible = "ldo_vtcxo";
383 regulator-name = "vtcxo";
387 mt6397_va28_reg: ldo_va28 {
388 regulator-compatible = "ldo_va28";
389 regulator-name = "va28";
393 mt6397_vcama_reg: ldo_vcama {
394 regulator-compatible = "ldo_vcama";
395 regulator-name = "vcama";
396 regulator-min-microvolt = <1500000>;
397 regulator-max-microvolt = <2800000>;
398 regulator-enable-ramp-delay = <218>;
401 mt6397_vio28_reg: ldo_vio28 {
402 regulator-compatible = "ldo_vio28";
403 regulator-name = "vio28";
407 mt6397_vusb_reg: ldo_vusb {
408 regulator-compatible = "ldo_vusb";
409 regulator-name = "vusb";
412 mt6397_vmc_reg: ldo_vmc {
413 regulator-compatible = "ldo_vmc";
414 regulator-name = "vmc";
415 regulator-min-microvolt = <1800000>;
416 regulator-max-microvolt = <3300000>;
417 regulator-enable-ramp-delay = <218>;
420 mt6397_vmch_reg: ldo_vmch {
421 regulator-compatible = "ldo_vmch";
422 regulator-name = "vmch";
423 regulator-min-microvolt = <3000000>;
424 regulator-max-microvolt = <3300000>;
425 regulator-enable-ramp-delay = <218>;
428 mt6397_vemc_3v3_reg: ldo_vemc3v3 {
429 regulator-compatible = "ldo_vemc3v3";
430 regulator-name = "vemc_3v3";
431 regulator-min-microvolt = <3000000>;
432 regulator-max-microvolt = <3300000>;
433 regulator-enable-ramp-delay = <218>;
436 mt6397_vgp1_reg: ldo_vgp1 {
437 regulator-compatible = "ldo_vgp1";
438 regulator-name = "vcamd";
439 regulator-min-microvolt = <1220000>;
440 regulator-max-microvolt = <3300000>;
441 regulator-enable-ramp-delay = <240>;
444 mt6397_vgp2_reg: ldo_vgp2 {
445 regulator-compatible = "ldo_vgp2";
446 regulator-name = "vcamio";
447 regulator-min-microvolt = <1000000>;
448 regulator-max-microvolt = <3300000>;
449 regulator-enable-ramp-delay = <218>;
452 mt6397_vgp3_reg: ldo_vgp3 {
453 regulator-compatible = "ldo_vgp3";
454 regulator-name = "vcamaf";
455 regulator-min-microvolt = <1200000>;
456 regulator-max-microvolt = <3300000>;
457 regulator-enable-ramp-delay = <218>;
460 mt6397_vgp4_reg: ldo_vgp4 {
461 regulator-compatible = "ldo_vgp4";
462 regulator-name = "vgp4";
463 regulator-min-microvolt = <1200000>;
464 regulator-max-microvolt = <3300000>;
465 regulator-enable-ramp-delay = <218>;
468 mt6397_vgp5_reg: ldo_vgp5 {
469 regulator-compatible = "ldo_vgp5";
470 regulator-name = "vgp5";
471 regulator-min-microvolt = <1200000>;
472 regulator-max-microvolt = <3000000>;
473 regulator-enable-ramp-delay = <218>;
476 mt6397_vgp6_reg: ldo_vgp6 {
477 regulator-compatible = "ldo_vgp6";
478 regulator-name = "vgp6";
479 regulator-min-microvolt = <1200000>;
480 regulator-max-microvolt = <3300000>;
481 regulator-enable-ramp-delay = <218>;
484 mt6397_vibr_reg: ldo_vibr {
485 regulator-compatible = "ldo_vibr";
486 regulator-name = "vibr";
487 regulator-min-microvolt = <1300000>;
488 regulator-max-microvolt = <3300000>;
489 regulator-enable-ramp-delay = <218>;
498 pinmux = <MT8173_PIN_69_SPI_CK__FUNC_SPI_CK_0_>,
499 <MT8173_PIN_70_SPI_MI__FUNC_SPI_MI_0_>,
500 <MT8173_PIN_71_SPI_MO__FUNC_SPI_MO_0_>,
501 <MT8173_PIN_72_SPI_CS__FUNC_SPI_CS_0_>;
507 pinctrl-names = "default";
508 pinctrl-0 = <&spi_pins_a>;
509 mediatek,pad-select = <0>;
514 vusb33-supply = <&mt6397_vusb_reg>;
515 vbus-supply = <&usb_p0_vbus>;
516 extcon = <&extcon_usb>;
519 pinctrl-names = "default", "id_float", "id_ground";
520 pinctrl-0 = <&usb_id_pins_float>;
521 pinctrl-1 = <&usb_id_pins_float>;
522 pinctrl-2 = <&usb_id_pins_ground>;
531 vusb33-supply = <&mt6397_vusb_reg>;
532 vbus-supply = <&usb_p1_vbus>;