diff options
Diffstat (limited to 'target/linux')
4 files changed, 264 insertions, 28 deletions
diff --git a/target/linux/ramips/dts/mt7621_alfa-network_ax1800rm.dts b/target/linux/ramips/dts/mt7621_alfa-network_ax1800rm.dts new file mode 100644 index 0000000000..1ef1f7fb31 --- /dev/null +++ b/target/linux/ramips/dts/mt7621_alfa-network_ax1800rm.dts @@ -0,0 +1,216 @@ +// 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 = "alfa-network,ax1800rm", "mediatek,mt7621-soc"; + model = "ALFA Network AX1800RM"; + + aliases { + label-mac-device = &wifi0; + led-boot = &led_power; + led-failsafe = &led_wan_red; + led-running = &led_power; + led-upgrade = &led_power; + }; + + chosen { + bootargs = "console=ttyS0,115200"; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + gpios = <&gpio 18 GPIO_ACTIVE_LOW>; + linux,code = <KEY_RESTART>; + }; + + wps { + label = "wps"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + linux,code = <KEY_WPS_BUTTON>; + }; + }; + + leds { + compatible = "gpio-leds"; + + lan1 { + label = "green:lan1"; + color = <LED_COLOR_ID_GREEN>; + function = LED_FUNCTION_LAN; + gpios = <&gpio 3 GPIO_ACTIVE_HIGH>; + }; + + lan2 { + label = "green:lan2"; + color = <LED_COLOR_ID_GREEN>; + function = LED_FUNCTION_LAN; + gpios = <&gpio 4 GPIO_ACTIVE_LOW>; + }; + + lan3 { + label = "green:lan3"; + color = <LED_COLOR_ID_GREEN>; + function = LED_FUNCTION_LAN; + gpios = <&gpio 14 GPIO_ACTIVE_LOW>; + }; + + led_power: power { + label = "green:power"; + color = <LED_COLOR_ID_GREEN>; + function = LED_FUNCTION_POWER; + gpios = <&gpio 7 GPIO_ACTIVE_LOW>; + }; + + wan_green { + label = "green:wan"; + color = <LED_COLOR_ID_GREEN>; + function = LED_FUNCTION_WAN; + gpios = <&gpio 15 GPIO_ACTIVE_LOW>; + }; + + led_wan_red: wan_red { + label = "red:wan"; + color = <LED_COLOR_ID_RED>; + function = LED_FUNCTION_WAN; + gpios = <&gpio 16 GPIO_ACTIVE_LOW>; + }; + }; +}; + +&spi0 { + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <50000000>; + m25p,fast-read; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x30000>; + read-only; + }; + + partition@30000 { + label = "u-boot-env"; + reg = <0x30000 0x10000>; + }; + + partition@40000 { + label = "boot-config"; + reg = <0x40000 0x10000>; + read-only; + }; + + partition@50000 { + compatible = "nvmem-cells"; + label = "factory"; + reg = <0x50000 0x10000>; + read-only; + + nvmem-layout { + compatible = "fixed-layout"; + #address-cells = <1>; + #size-cells = <1>; + + eeprom: eeprom@0 { + reg = <0x0 0xe00>; + }; + + macaddr: macaddr@4 { + compatible = "mac-base"; + reg = <0x4 0x6>; + #nvmem-cell-cells = <1>; + }; + }; + }; + + partition@60000 { + label = "permanent_config"; + reg = <0x60000 0x80000>; + read-only; + }; + + partition@e0000 { + compatible = "denx,fit"; + label = "firmware"; + reg = <0xe0000 0xf20000>; + }; + }; + }; +}; + +&pcie { + status = "okay"; +}; + +&pcie1 { + wifi0: wifi@0,0 { + compatible = "mediatek,mt76"; + reg = <0x0000 0 0 0 0>; + + nvmem-cells = <&eeprom>; + nvmem-cell-names = "eeprom"; + mediatek,disable-radar-background; + }; +}; + +&gmac0 { + nvmem-cells = <&macaddr 2>; + nvmem-cell-names = "mac-address"; +}; + +&gmac1 { + status = "okay"; + label = "wan"; + phy-handle = <ðphy4>; + + nvmem-cells = <&macaddr 3>; + nvmem-cell-names = "mac-address"; +}; + +&mdio { + ethphy4: ethernet-phy@4 { + reg = <4>; + }; +}; + +&switch0 { + ports { + port@0 { + status = "okay"; + label = "lan1"; + }; + + port@1 { + status = "okay"; + label = "lan2"; + }; + + port@2 { + status = "okay"; + label = "lan3"; + }; + }; +}; + +&state_default { + gpio { + groups = "i2c", "jtag", "uart3", "wdt"; + function = "gpio"; + }; +}; diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk index 338cbae5b6..abcdc08ade 100644 --- a/target/linux/ramips/image/mt7621.mk +++ b/target/linux/ramips/image/mt7621.mk @@ -209,6 +209,18 @@ define Device/afoundry_ew1200 endef TARGET_DEVICES += afoundry_ew1200 +define Device/alfa-network_ax1800rm + $(Device/dsa-migration) + IMAGE_SIZE := 15488k + DEVICE_VENDOR := ALFA Network + DEVICE_MODEL := AX1800RM + DEVICE_PACKAGES := kmod-mt7915-firmware + KERNEL := kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb + IMAGES += recovery.bin + IMAGE/recovery.bin := append-kernel | append-rootfs | pad-rootfs | check-size +endef +TARGET_DEVICES += alfa-network_ax1800rm + define Device/alfa-network_quad-e4g $(Device/dsa-migration) IMAGE_SIZE := 16064k diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds b/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds index 1e13c04c2f..d4dfdf39e2 100644 --- a/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds @@ -7,6 +7,12 @@ board=$(board_name) board_config_update case $board in +alfa-network,ax1800rm) + ucidef_set_led_netdev "lan1" "lan1" "green:lan1" "lan1" + ucidef_set_led_netdev "lan2" "lan2" "green:lan2" "lan2" + ucidef_set_led_netdev "lan3" "lan3" "green:lan3" "lan3" + ucidef_set_led_netdev "wan" "wan" "green:wan" "wan" + ;; asus,rp-ac87) ucidef_set_rssimon "wlan0" "200000" "1" ucidef_set_rssimon "wlan1" "200000" "1" diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network index 7bd5e83c5a..a162cb9d1d 100644 --- a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network +++ b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network @@ -8,6 +8,26 @@ ramips_setup_interfaces() local board="$1" case $board in + alfa-network,ax1800rm|\ + ampedwireless,ally-r1900k|\ + asus,rt-ax53u|\ + gehua,ghl-r-001|\ + h3c,tx1800-plus|\ + h3c,tx1801-plus|\ + h3c,tx1806|\ + haier,har-20s2u1|\ + hiwifi,hc5962|\ + netgear,wax202|\ + sim,simax1800t|\ + xiaomi,mi-router-3-pro|\ + xiaomi,mi-router-ac2100|\ + xiaomi,mi-router-cr6606|\ + xiaomi,mi-router-cr6608|\ + xiaomi,mi-router-cr6609|\ + xiaomi,redmi-router-ac2100|\ + zyxel,wsm20) + ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan" + ;; arcadyan,we420223-99) ucidef_set_interface_lan "swp0 swp1" ;; @@ -39,25 +59,6 @@ ramips_setup_interfaces() zyxel,nwa55axe) ucidef_set_interface_lan "lan" ;; - ampedwireless,ally-r1900k|\ - asus,rt-ax53u|\ - gehua,ghl-r-001|\ - h3c,tx1800-plus|\ - h3c,tx1801-plus|\ - h3c,tx1806|\ - haier,har-20s2u1|\ - hiwifi,hc5962|\ - netgear,wax202|\ - sim,simax1800t|\ - xiaomi,mi-router-3-pro|\ - xiaomi,mi-router-ac2100|\ - xiaomi,mi-router-cr6606|\ - xiaomi,mi-router-cr6608|\ - xiaomi,mi-router-cr6609|\ - xiaomi,redmi-router-ac2100|\ - zyxel,wsm20) - ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan" - ;; asiarf,ap7621-001|\ humax,e10|\ wavlink,ws-wn572hp3-4g|\ @@ -166,6 +167,16 @@ ramips_setup_macs() local label_mac="" case $board in + alfa-network,ax1800rm|\ + jcg,y2|\ + wavlink,wl-wn531a6|\ + wavlink,wl-wn533a8|\ + winstars,ws-wn583a6|\ + zbtlink,zbt-we1326|\ + zbtlink,zbt-wg3526-16m|\ + zbtlink,zbt-wg3526-32m) + label_mac=$(mtd_get_mac_binary factory 0x4) + ;; ampedwireless,ally-00x19k) lan_mac=$(mtd_get_mac_ascii hwconfig HW.LAN.MAC.Address) label_mac=$lan_mac @@ -236,15 +247,6 @@ ramips_setup_macs() lan_mac=$(mtd_get_mac_ascii config ethaddr) wan_mac=$(macaddr_add "$lan_mac" 1) ;; - jcg,y2|\ - wavlink,wl-wn531a6|\ - wavlink,wl-wn533a8|\ - winstars,ws-wn583a6|\ - zbtlink,zbt-we1326|\ - zbtlink,zbt-wg3526-16m|\ - zbtlink,zbt-wg3526-32m) - label_mac=$(mtd_get_mac_binary factory 0x4) - ;; linksys,e5600|\ linksys,ea6350-v4|\ linksys,ea7300-v1|\ |