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>
14 label-mac-device = &gmac0;
15 led-boot = &led_status_green;
16 led-failsafe = &led_status_red;
17 led-running = &led_status_green;
18 led-upgrade = &led_status_red;
22 stdout-path = "serial0:115200n8";
26 reg = <0 0x40000000 0 0x40000000>;
29 reg_1p8v: regulator-1p8v {
30 compatible = "regulator-fixed";
31 regulator-name = "fixed-1.8V";
32 regulator-min-microvolt = <1800000>;
33 regulator-max-microvolt = <1800000>;
38 reg_3p3v: regulator-3p3v {
39 compatible = "regulator-fixed";
40 regulator-name = "fixed-3.3V";
41 regulator-min-microvolt = <3300000>;
42 regulator-max-microvolt = <3300000>;
47 reg_5v: regulator-5v {
48 compatible = "regulator-fixed";
49 regulator-name = "fixed-5V";
50 regulator-min-microvolt = <5000000>;
51 regulator-max-microvolt = <5000000>;
57 compatible = "gpio-keys";
62 gpios = <&pio 21 GPIO_ACTIVE_LOW>;
63 linux,code = <KEY_RESTART>;
68 gpios = <&pio 11 GPIO_ACTIVE_LOW>;
69 linux,code = <KEY_WLAN>;
73 gpios = <&pio 56 GPIO_ACTIVE_LOW>;
74 linux,code = <KEY_WPS_BUTTON>;
79 compatible = "gpio-leds";
82 label = "green:wifi24g";
83 gpios = <&pio 1 GPIO_ACTIVE_LOW>;
84 default-state = "off";
88 label = "green:wifi5g";
89 gpios = <&pio 2 GPIO_ACTIVE_LOW>;
90 default-state = "off";
95 gpios = <&pio 14 GPIO_ACTIVE_LOW>;
96 default-state = "off";
101 gpios = <&pio 15 GPIO_ACTIVE_LOW>;
102 default-state = "off";
105 led_status_green: led_green_pwr {
107 gpios = <&pio 13 GPIO_ACTIVE_LOW>;
108 linux,default-trigger = "timer"; /* Default blinking */
109 led-pattern = <125 125>; /* Fast blink is 4 HZ */
112 led_status_red: led_red_pwr {
114 gpios = <&pio 12 GPIO_ACTIVE_LOW>;
115 default-state = "off";
120 gpios = <&pio 16 GPIO_ACTIVE_HIGH>;
121 default-state = "off";
126 gpios = <&pio 17 GPIO_ACTIVE_HIGH>;
127 default-state = "off";
131 label = "amber:wps24g";
132 gpios = <&pio 18 GPIO_ACTIVE_HIGH>;
133 default-state = "off";
137 label = "amber:wps5g";
138 gpios = <&pio 19 GPIO_ACTIVE_HIGH>;
139 default-state = "off";
144 gpios = <&pio 20 GPIO_ACTIVE_HIGH>;
145 default-state = "off";
150 gpios = <&pio 24 GPIO_ACTIVE_HIGH>;
151 default-state = "off";
157 pinctrl-names = "default";
158 pinctrl-0 = <&spi_flash_pins>;
160 #address-cells = <1>;
164 spi_nand: spi_nand@0 {
165 #address-cells = <1>;
167 compatible = "spi-nand";
169 spi-max-frequency = <10000000>;
170 spi-tx-bus-width = <4>;
171 spi-rx-bus-width = <4>;
173 nand_partitions: partitions {
174 compatible = "fixed-partitions";
175 #address-cells = <1>;
182 pinctrl-names = "default";
183 pinctrl-0 = <ð_pins>;
187 compatible = "mediatek,eth-mac";
189 phy-mode = "2500base-x";
199 compatible = "mediatek,eth-mac";
201 phy-mode = "2500base-x";
206 #address-cells = <1>;
208 reset-gpios = <&pio 6 GPIO_ACTIVE_LOW>;
209 reset-delay-us = <1500000>;
210 reset-post-delay-us = <1000000>;
213 compatible = "ethernet-phy-ieee802.3-c45";
215 mxl,led-config = <0x03f0 0x0 0x0 0x0>;
219 compatible = "ethernet-phy-ieee802.3-c45";
221 mxl,led-config = <0x00f0 0x0 0x0 0x0>;
225 compatible = "mediatek,mt7531";
227 reset-gpios = <&pio 5 GPIO_ACTIVE_HIGH>;
230 #address-cells = <1>;
251 phy-mode = "2500base-x";
258 phy-mode = "2500base-x";
277 pinctrl-names = "default", "dbdc";
278 pinctrl-0 = <&wf_2g_5g_pins>;
279 pinctrl-1 = <&wf_dbdc_pins>;
290 groups = "switch_int", "mdc_mdio";
294 spic_pins_g2: spic-pins-29-to-32 {
301 spi_flash_pins: spi-flash-pins-33-to-38 {
304 groups = "spi0", "spi0_wp_hold";
307 pins = "SPI2_CS", "SPI2_HOLD", "SPI2_WP";
308 drive-strength = <8>;
309 mediatek,pull-up-adv = <0>; /* bias-disable */
312 pins = "SPI2_CLK", "SPI2_MOSI", "SPI2_MISO";
313 drive-strength = <8>;
314 mediatek,pull-down-adv = <0>; /* bias-disable */
318 uart0_pins: uart0-pins {
325 uart1_pins: uart1-pins {
332 uart2_pins: uart2-pins {
339 wf_2g_5g_pins: wf_2g_5g-pins {
342 groups = "wf_2g", "wf_5g";
345 pins = "WF0_HB1", "WF0_HB2", "WF0_HB3", "WF0_HB4",
346 "WF0_HB0", "WF0_HB0_B", "WF0_HB5", "WF0_HB6",
347 "WF0_HB7", "WF0_HB8", "WF0_HB9", "WF0_HB10",
348 "WF0_TOP_CLK", "WF0_TOP_DATA", "WF1_HB1",
349 "WF1_HB2", "WF1_HB3", "WF1_HB4", "WF1_HB0",
350 "WF1_HB5", "WF1_HB6", "WF1_HB7", "WF1_HB8",
351 "WF1_TOP_CLK", "WF1_TOP_DATA";
352 drive-strength = <4>;
356 wf_dbdc_pins: wf_dbdc-pins {
362 pins = "WF0_HB1", "WF0_HB2", "WF0_HB3", "WF0_HB4",
363 "WF0_HB0", "WF0_HB0_B", "WF0_HB5", "WF0_HB6",
364 "WF0_HB7", "WF0_HB8", "WF0_HB9", "WF0_HB10",
365 "WF0_TOP_CLK", "WF0_TOP_DATA", "WF1_HB1",
366 "WF1_HB2", "WF1_HB3", "WF1_HB4", "WF1_HB0",
367 "WF1_HB5", "WF1_HB6", "WF1_HB7", "WF1_HB8",
368 "WF1_TOP_CLK", "WF1_TOP_DATA";
369 drive-strength = <4>;
375 gpios = <7 GPIO_ACTIVE_LOW>;
377 line-name = "usb-oc";
382 pinctrl-names = "default";
383 pinctrl-0 = <&spic_pins_g2>;
386 proslic_spi: proslic_spi@0 {
387 compatible = "silabs,proslic_spi";
389 spi-max-frequency = <10000000>;
393 debug_level = <4>; /* 1 = TRC, 2 = DBG, 4 = ERR */
394 reset_gpio = <&pio 25 GPIO_ACTIVE_HIGH>;
395 ig,enable-spi = <1>; /* 1: Enable, 0: Disable */
400 vusb33-supply = <®_3p3v>;
401 vbus-supply = <®_5v>;
410 pinctrl-names = "default";
411 pinctrl-0 = <&uart0_pins>;
416 pinctrl-names = "default";
417 pinctrl-0 = <&uart1_pins>;
420 /* EFR32MG21 Zigbee (BOOT)*/
424 pinctrl-names = "default";
425 pinctrl-0 = <&uart2_pins>;
428 /* EFR32MG21 Zigbee */