1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
3 * Copyright (C) 2021 MediaTek Inc.
4 * Author: Sam.Shih <sam.shih@mediatek.com>
7 #include "mt7986a.dtsi"
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/input/input.h>
10 #include <dt-bindings/leds/common.h>
15 label-mac-device = &gmac0;
16 led-boot = &led_status_green;
17 led-failsafe = &led_status_red;
18 led-running = &led_status_green;
19 led-upgrade = &led_status_red;
23 stdout-path = "serial0:115200n8";
27 reg = <0 0x40000000 0 0x40000000>;
30 reg_1p8v: regulator-1p8v {
31 compatible = "regulator-fixed";
32 regulator-name = "fixed-1.8V";
33 regulator-min-microvolt = <1800000>;
34 regulator-max-microvolt = <1800000>;
39 reg_3p3v: regulator-3p3v {
40 compatible = "regulator-fixed";
41 regulator-name = "fixed-3.3V";
42 regulator-min-microvolt = <3300000>;
43 regulator-max-microvolt = <3300000>;
48 reg_5v: regulator-5v {
49 compatible = "regulator-fixed";
50 regulator-name = "fixed-5V";
51 regulator-min-microvolt = <5000000>;
52 regulator-max-microvolt = <5000000>;
58 compatible = "gpio-keys";
63 gpios = <&pio 21 GPIO_ACTIVE_LOW>;
64 linux,code = <KEY_RESTART>;
69 gpios = <&pio 11 GPIO_ACTIVE_LOW>;
70 linux,code = <KEY_WLAN>;
74 gpios = <&pio 56 GPIO_ACTIVE_LOW>;
75 linux,code = <KEY_WPS_BUTTON>;
80 compatible = "gpio-leds";
83 label = "green:wifi24g";
84 gpios = <&pio 1 GPIO_ACTIVE_LOW>;
85 default-state = "off";
89 label = "green:wifi5g";
90 gpios = <&pio 2 GPIO_ACTIVE_LOW>;
91 default-state = "off";
96 gpios = <&pio 14 GPIO_ACTIVE_LOW>;
97 default-state = "off";
102 gpios = <&pio 15 GPIO_ACTIVE_LOW>;
103 default-state = "off";
106 led_status_green: led_green_pwr {
108 gpios = <&pio 13 GPIO_ACTIVE_LOW>;
109 linux,default-trigger = "timer"; /* Default blinking */
110 led-pattern = <125 125>; /* Fast blink is 4 HZ */
113 led_status_red: led_red_pwr {
115 gpios = <&pio 12 GPIO_ACTIVE_LOW>;
116 default-state = "off";
121 gpios = <&pio 16 GPIO_ACTIVE_HIGH>;
122 default-state = "off";
127 gpios = <&pio 17 GPIO_ACTIVE_HIGH>;
128 default-state = "off";
132 label = "amber:wps24g";
133 gpios = <&pio 18 GPIO_ACTIVE_HIGH>;
134 default-state = "off";
138 label = "amber:wps5g";
139 gpios = <&pio 19 GPIO_ACTIVE_HIGH>;
140 default-state = "off";
144 function = LED_FUNCTION_LAN;
145 color = <LED_COLOR_ID_GREEN>;
146 gpios = <&pio 20 GPIO_ACTIVE_HIGH>;
147 default-state = "off";
152 gpios = <&pio 24 GPIO_ACTIVE_HIGH>;
153 default-state = "off";
159 pinctrl-names = "default";
160 pinctrl-0 = <&spi_flash_pins>;
162 #address-cells = <1>;
166 spi_nand: spi_nand@0 {
167 #address-cells = <1>;
169 compatible = "spi-nand";
171 spi-max-frequency = <10000000>;
172 spi-tx-bus-width = <4>;
173 spi-rx-bus-width = <4>;
175 nand_partitions: partitions {
176 compatible = "fixed-partitions";
177 #address-cells = <1>;
184 pinctrl-names = "default";
185 pinctrl-0 = <ð_pins>;
189 compatible = "mediatek,eth-mac";
191 phy-mode = "2500base-x";
201 compatible = "mediatek,eth-mac";
203 phy-mode = "2500base-x";
208 #address-cells = <1>;
210 reset-gpios = <&pio 6 GPIO_ACTIVE_LOW>;
211 reset-delay-us = <1500000>;
212 reset-post-delay-us = <1000000>;
215 compatible = "ethernet-phy-ieee802.3-c45";
217 mxl,led-config = <0x03f0 0x0 0x0 0x0>;
221 compatible = "ethernet-phy-ieee802.3-c45";
223 mxl,led-config = <0x00f0 0x0 0x0 0x0>;
227 compatible = "mediatek,mt7531";
229 reset-gpios = <&pio 5 GPIO_ACTIVE_HIGH>;
232 #address-cells = <1>;
253 phy-mode = "2500base-x";
260 phy-mode = "2500base-x";
279 pinctrl-names = "default", "dbdc";
280 pinctrl-0 = <&wf_2g_5g_pins>;
281 pinctrl-1 = <&wf_dbdc_pins>;
292 groups = "switch_int", "mdc_mdio";
296 spic_pins_g2: spic-pins-29-to-32 {
303 spi_flash_pins: spi-flash-pins-33-to-38 {
306 groups = "spi0", "spi0_wp_hold";
309 pins = "SPI2_CS", "SPI2_HOLD", "SPI2_WP";
310 drive-strength = <8>;
311 mediatek,pull-up-adv = <0>; /* bias-disable */
314 pins = "SPI2_CLK", "SPI2_MOSI", "SPI2_MISO";
315 drive-strength = <8>;
316 mediatek,pull-down-adv = <0>; /* bias-disable */
320 uart0_pins: uart0-pins {
327 uart1_pins: uart1-pins {
334 uart2_pins: uart2-pins {
341 wf_2g_5g_pins: wf_2g_5g-pins {
344 groups = "wf_2g", "wf_5g";
347 pins = "WF0_HB1", "WF0_HB2", "WF0_HB3", "WF0_HB4",
348 "WF0_HB0", "WF0_HB0_B", "WF0_HB5", "WF0_HB6",
349 "WF0_HB7", "WF0_HB8", "WF0_HB9", "WF0_HB10",
350 "WF0_TOP_CLK", "WF0_TOP_DATA", "WF1_HB1",
351 "WF1_HB2", "WF1_HB3", "WF1_HB4", "WF1_HB0",
352 "WF1_HB5", "WF1_HB6", "WF1_HB7", "WF1_HB8",
353 "WF1_TOP_CLK", "WF1_TOP_DATA";
354 drive-strength = <4>;
358 wf_dbdc_pins: wf_dbdc-pins {
364 pins = "WF0_HB1", "WF0_HB2", "WF0_HB3", "WF0_HB4",
365 "WF0_HB0", "WF0_HB0_B", "WF0_HB5", "WF0_HB6",
366 "WF0_HB7", "WF0_HB8", "WF0_HB9", "WF0_HB10",
367 "WF0_TOP_CLK", "WF0_TOP_DATA", "WF1_HB1",
368 "WF1_HB2", "WF1_HB3", "WF1_HB4", "WF1_HB0",
369 "WF1_HB5", "WF1_HB6", "WF1_HB7", "WF1_HB8",
370 "WF1_TOP_CLK", "WF1_TOP_DATA";
371 drive-strength = <4>;
377 gpios = <7 GPIO_ACTIVE_LOW>;
379 line-name = "usb-oc";
384 pinctrl-names = "default";
385 pinctrl-0 = <&spic_pins_g2>;
388 proslic_spi: proslic_spi@0 {
389 compatible = "silabs,proslic_spi";
391 spi-max-frequency = <10000000>;
395 debug_level = <4>; /* 1 = TRC, 2 = DBG, 4 = ERR */
396 reset_gpio = <&pio 25 GPIO_ACTIVE_HIGH>;
397 ig,enable-spi = <1>; /* 1: Enable, 0: Disable */
402 vusb33-supply = <®_3p3v>;
403 vbus-supply = <®_5v>;
412 pinctrl-names = "default";
413 pinctrl-0 = <&uart0_pins>;
418 pinctrl-names = "default";
419 pinctrl-0 = <&uart1_pins>;
422 /* EFR32MG21 Zigbee (BOOT)*/
426 pinctrl-names = "default";
427 pinctrl-0 = <&uart2_pins>;
430 /* EFR32MG21 Zigbee */