immortalwrt-VIKINGYFY/target/linux/ramips/dts/mt7621_tplink_ex220-v2.dts
Tianling Shen 9521722f00
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2025-09-20 15:46:16 +08:00

231 lines
3.9 KiB
Plaintext

// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "mt7621.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>
/ {
compatible = "tplink,ex220-v2", "mediatek,mt7621-soc";
model = "TP-Link EX220 v2";
aliases {
led-boot = &power_led;
led-failsafe = &status_led;
led-upgrade = &power_led;
led-running = &wan_led;
label-mac-device = &gmac0;
};
chosen {
bootargs = "console=ttyS0,115200";
};
keys {
compatible = "gpio-keys";
button-wps {
label = "rfkill";
gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RFKILL>;
};
button-reset {
label = "reset";
gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};
};
leds {
compatible = "gpio-leds";
wan_led: led-wan {
function = LED_FUNCTION_WAN;
color = <LED_COLOR_ID_GREEN>;
gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
linux,default-trigger = "netdev";
};
status_led: led-status {
function = LED_FUNCTION_STATUS;
color = <LED_COLOR_ID_RED>;
gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
default-state = "on";
};
power_led: led-power {
function = LED_FUNCTION_POWER;
color = <LED_COLOR_ID_BLUE>;
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
};
};
};
&spi0 {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <25000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "boot";
reg = <0x00 0x30000>;
read-only;
};
partition@30000 {
label = "boot-env";
reg = <0x30000 0x10000>;
read-only;
};
partition@40000 {
label = "factory";
reg = <0x40000 0x10000>;
read-only;
};
partition@50000 {
label = "config";
reg = <0x50000 0x10000>;
read-only;
};
partition@60000 {
label = "isp_config";
reg = <0x60000 0x10000>;
read-only;
};
partition@70000 {
label = "rom_file";
reg = <0x70000 0x10000>;
read-only;
nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;
macaddr_rom_file_f100: macaddr@f100 {
compatible = "mac-base";
reg = <0xf100 0x6>;
#nvmem-cell-cells = <1>;
};
};
};
partition@80000 {
label = "cloud";
reg = <0x80000 0x10000>;
read-only;
};
partition@90000 {
label = "radio";
reg = <0x90000 0x20000>;
read-only;
nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;
eeprom_radio_0: eeprom@0 {
reg = <0x0 0xe00>;
};
precal_radio_e10: precal@e10 {
reg = <0xe10 0x19c10>;
};
};
};
partition@b0000 {
label = "config_bak";
reg = <0xb0000 0x10000>;
read-only;
};
partition@c0000 {
compatible = "denx,fit";
label = "firmware";
reg = <0xc0000 0xf30000>;
};
};
};
};
&pcie {
status = "okay";
};
&pcie1 {
wifi@0,0 {
compatible = "mediatek,mt76";
reg = <0x0000 0 0 0 0>;
nvmem-cells = <&eeprom_radio_0>, <&precal_radio_e10>, <&macaddr_rom_file_f100 0>;
nvmem-cell-names = "eeprom", "precal", "mac-address";
mediatek,disable-radar-background;
band@1 {
reg = <1>;
nvmem-cells = <&macaddr_rom_file_f100 2>;
nvmem-cell-names = "mac-address";
};
};
};
&gmac0 {
nvmem-cells = <&macaddr_rom_file_f100 0>;
nvmem-cell-names = "mac-address";
};
&gmac1 {
status = "okay";
label = "wan";
phy-handle = <&ethphy0>;
nvmem-cells = <&macaddr_rom_file_f100 1>;
nvmem-cell-names = "mac-address";
};
&ethphy0 {
/delete-property/ interrupts;
};
&switch0 {
ports {
port@2 {
status = "okay";
label = "lan1";
};
port@3 {
status = "okay";
label = "lan2";
};
port@4 {
status = "okay";
label = "lan3";
};
};
};
&state_default {
gpio {
groups = "i2c", "uart3", "jtag", "wdt";
function = "gpio";
};
};