1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
3 * Copyright (C) 2021 MediaTek Inc.
4 * Author: Sam.Shih <sam.shih@mediatek.com>
8 #include "mt7986a.dtsi"
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/input/input.h>
13 model = "Zyxel EX5601-T0";
14 compatible = "zyxel,ex5601-t0", "mediatek,mt7986a-rfb-snand";
21 stdout-path = "serial0:115200n8";
25 reg = <0 0x40000000 0 0x40000000>;
28 reg_1p8v: regulator-1p8v {
29 compatible = "regulator-fixed";
30 regulator-name = "fixed-1.8V";
31 regulator-min-microvolt = <1800000>;
32 regulator-max-microvolt = <1800000>;
37 reg_3p3v: regulator-3p3v {
38 compatible = "regulator-fixed";
39 regulator-name = "fixed-3.3V";
40 regulator-min-microvolt = <3300000>;
41 regulator-max-microvolt = <3300000>;
46 reg_5v: regulator-5v {
47 compatible = "regulator-fixed";
48 regulator-name = "fixed-5V";
49 regulator-min-microvolt = <5000000>;
50 regulator-max-microvolt = <5000000>;
56 compatible = "gpio-keys";
61 gpios = <&pio 21 GPIO_ACTIVE_LOW>;
62 linux,code = <KEY_RESTART>;
67 gpios = <&pio 11 GPIO_ACTIVE_LOW>;
68 linux,code = <KEY_WLAN>;
72 gpios = <&pio 56 GPIO_ACTIVE_LOW>;
73 linux,code = <KEY_WPS_BUTTON>;
78 compatible = "gpio-leds";
81 label = "zyled-green-wifi24g";
82 gpios = <&pio 1 GPIO_ACTIVE_LOW>;
83 default-state = "off";
87 label = "zyled-green-wifi5g";
88 gpios = <&pio 2 GPIO_ACTIVE_LOW>;
89 default-state = "off";
93 label = "zyled-green-inet";
94 gpios = <&pio 14 GPIO_ACTIVE_LOW>;
95 default-state = "off";
99 label = "zyled-red-inet";
100 gpios = <&pio 15 GPIO_ACTIVE_LOW>;
101 default-state = "off";
105 label = "zyled-green-pwr";
106 gpios = <&pio 13 GPIO_ACTIVE_LOW>;
107 linux,default-trigger = "timer"; /* Default blinking */
108 led-pattern = <125 125>; /* Fast blink is 4 HZ */
112 label = "zyled-red-pwr";
113 gpios = <&pio 12 GPIO_ACTIVE_LOW>;
114 default-state = "off";
118 label = "zyled-green-fxs";
119 gpios = <&pio 16 GPIO_ACTIVE_HIGH>;
120 default-state = "off";
124 label = "zyled-amber-fxs";
125 gpios = <&pio 17 GPIO_ACTIVE_HIGH>;
126 default-state = "off";
130 label = "zyled-amber-wps24g";
131 gpios = <&pio 18 GPIO_ACTIVE_HIGH>;
132 default-state = "off";
136 label = "zyled-amber-wps5g";
137 gpios = <&pio 19 GPIO_ACTIVE_HIGH>;
138 default-state = "off";
142 label = "zyled-green-lan";
143 gpios = <&pio 20 GPIO_ACTIVE_HIGH>;
144 default-state = "off";
148 label = "zyled-green-sfp";
149 gpios = <&pio 24 GPIO_ACTIVE_HIGH>;
150 default-state = "off";
161 compatible = "mediatek,eth-mac";
163 phy-mode = "2500base-x";
165 nvmem-cells = <&macaddr_factory_002a>;
166 nvmem-cell-names = "mac-address";
176 compatible = "mediatek,eth-mac";
178 phy-mode = "2500base-x";
181 nvmem-cells = <&macaddr_factory_0024>;
182 nvmem-cell-names = "mac-address";
186 #address-cells = <1>;
188 reset-gpios = <&pio 6 GPIO_ACTIVE_LOW>;
189 reset-delay-us = <1500000>;
190 reset-post-delay-us = <1000000>;
193 compatible = "ethernet-phy-ieee802.3-c45";
198 compatible = "ethernet-phy-ieee802.3-c45";
203 compatible = "mediatek,mt7531";
205 reset-gpios = <&pio 5 GPIO_ACTIVE_HIGH>;
208 #address-cells = <1>;
229 phy-mode = "2500base-x";
236 phy-mode = "2500base-x";
251 pinctrl-names = "default", "dbdc";
252 pinctrl-0 = <&wf_2g_5g_pins>;
253 pinctrl-1 = <&wf_dbdc_pins>;
254 mediatek,mtd-eeprom = <&factory 0x0>;
255 nvmem-cells = <&macaddr_factory_0004>;
256 nvmem-cell-names = "mac-address";
264 pinctrl-names = "default", "state_uhs";
265 pinctrl-0 = <&mmc0_pins_default>;
266 pinctrl-1 = <&mmc0_pins_uhs>;
268 max-frequency = <200000000>;
272 hs400-ds-delay = <0x14014>;
273 vmmc-supply = <®_3p3v>;
274 vqmmc-supply = <®_1p8v>;
282 pinctrl-names = "default";
283 pinctrl-0 = <&pcie_pins>;
292 mmc0_pins_default: mmc0-pins {
298 pins = "EMMC_DATA_0", "EMMC_DATA_1", "EMMC_DATA_2",
299 "EMMC_DATA_3", "EMMC_DATA_4", "EMMC_DATA_5",
300 "EMMC_DATA_6", "EMMC_DATA_7", "EMMC_CMD";
302 drive-strength = <4>;
303 mediatek,pull-up-adv = <1>; /* pull-up 10K */
307 drive-strength = <6>;
308 mediatek,pull-down-adv = <2>; /* pull-down 50K */
312 mediatek,pull-down-adv = <2>; /* pull-down 50K */
316 drive-strength = <4>;
317 mediatek,pull-up-adv = <1>; /* pull-up 10K */
321 mmc0_pins_uhs: mmc0-uhs-pins {
327 pins = "EMMC_DATA_0", "EMMC_DATA_1", "EMMC_DATA_2",
328 "EMMC_DATA_3", "EMMC_DATA_4", "EMMC_DATA_5",
329 "EMMC_DATA_6", "EMMC_DATA_7", "EMMC_CMD";
331 drive-strength = <4>;
332 mediatek,pull-up-adv = <1>; /* pull-up 10K */
336 drive-strength = <6>;
337 mediatek,pull-down-adv = <2>; /* pull-down 50K */
341 mediatek,pull-down-adv = <2>; /* pull-down 50K */
345 drive-strength = <4>;
346 mediatek,pull-up-adv = <1>; /* pull-up 10K */
350 pcie_pins: pcie-pins {
353 groups = "pcie_clk", "pcie_wake", "pcie_pereset";
357 spic_pins_g2: spic-pins-29-to-32 {
364 spi_flash_pins: spi-flash-pins-33-to-38 {
367 groups = "spi0", "spi0_wp_hold";
370 pins = "SPI2_CS", "SPI2_HOLD", "SPI2_WP";
371 drive-strength = <8>;
372 mediatek,pull-up-adv = <0>; /* bias-disable */
375 pins = "SPI2_CLK", "SPI2_MOSI", "SPI2_MISO";
376 drive-strength = <8>;
377 mediatek,pull-down-adv = <0>; /* bias-disable */
381 uart1_pins: uart1-pins {
388 uart2_pins: uart2-pins {
395 wf_2g_5g_pins: wf_2g_5g-pins {
398 groups = "wf_2g", "wf_5g";
401 pins = "WF0_HB1", "WF0_HB2", "WF0_HB3", "WF0_HB4",
402 "WF0_HB0", "WF0_HB0_B", "WF0_HB5", "WF0_HB6",
403 "WF0_HB7", "WF0_HB8", "WF0_HB9", "WF0_HB10",
404 "WF0_TOP_CLK", "WF0_TOP_DATA", "WF1_HB1",
405 "WF1_HB2", "WF1_HB3", "WF1_HB4", "WF1_HB0",
406 "WF1_HB5", "WF1_HB6", "WF1_HB7", "WF1_HB8",
407 "WF1_TOP_CLK", "WF1_TOP_DATA";
408 drive-strength = <4>;
412 wf_dbdc_pins: wf_dbdc-pins {
418 pins = "WF0_HB1", "WF0_HB2", "WF0_HB3", "WF0_HB4",
419 "WF0_HB0", "WF0_HB0_B", "WF0_HB5", "WF0_HB6",
420 "WF0_HB7", "WF0_HB8", "WF0_HB9", "WF0_HB10",
421 "WF0_TOP_CLK", "WF0_TOP_DATA", "WF1_HB1",
422 "WF1_HB2", "WF1_HB3", "WF1_HB4", "WF1_HB0",
423 "WF1_HB5", "WF1_HB6", "WF1_HB7", "WF1_HB8",
424 "WF1_TOP_CLK", "WF1_TOP_DATA";
425 drive-strength = <4>;
431 pinctrl-names = "default";
432 pinctrl-0 = <&spi_flash_pins>;
434 #address-cells = <1>;
438 spi_nand: spi_nand@0 {
439 #address-cells = <1>;
441 compatible = "spi-nand";
443 spi-max-frequency = <10000000>;
444 spi-tx-buswidth = <4>;
445 spi-rx-buswidth = <4>;
448 compatible = "fixed-partitions";
449 #address-cells = <1>;
454 reg = <0x00000 0x0100000>;
459 label = "u-boot-env";
460 reg = <0x0100000 0x0080000>;
463 factory: partition@180000 {
465 reg = <0x180000 0x0200000>;
471 reg = <0x380000 0x01C0000>;
477 reg = <0x540000 0x0040000>;
483 reg = <0x580000 0x4000000>;
488 reg = <0x4580000 0x4000000>;
494 reg = <0x8580000 0x15A80000>;
501 pinctrl-names = "default";
502 pinctrl-0 = <&spic_pins_g2>;
505 proslic_spi: proslic_spi@0 {
506 compatible = "silabs,proslic_spi";
508 spi-max-frequency = <10000000>;
512 debug_level = <4>; /* 1 = TRC, 2 = DBG, 4 = ERR */
513 reset_gpio = <&pio 7 GPIO_ACTIVE_HIGH>;
514 ig,enable-spi = <1>; /* 1: Enable, 0: Disable */
519 vusb33-supply = <®_3p3v>;
520 vbus-supply = <®_5v>;
529 pinctrl-names = "default";
530 pinctrl-0 = <&uart1_pins>;
535 pinctrl-names = "default";
536 pinctrl-0 = <&uart2_pins>;
545 compatible = "nvmem-cells";
546 #address-cells = <1>;
549 macaddr_factory_0004: macaddr@0004 {
553 macaddr_factory_0024: macaddr@0024 {
557 macaddr_factory_002a: macaddr@002a {