From 7c5f712e4fec39cc70bef9ac0251926dfa32cc68 Mon Sep 17 00:00:00 2001 From: Gabor Varga Date: Tue, 22 Oct 2019 21:44:09 +0200 Subject: [PATCH] ramips: add support for Asus RT-AC65P The Asus RT-AC65P router is identical with the RT-AC85P, but better to make separate images for it. On both routers the installation can be done also via SSH: Note: The user/password for SSH is identical with the one used in the Web-interface. 1. Complete the initial setup wizard. 2. Activate SSH under "Administration" -> "System". 3. Transfer the OpenWrt factory image via scp: > scp openwrt-ramips-mt7621-asus_rt-ac65p-squashfs-factory.bin admin@192.168.50.1:/tmp 4. Connect via SSH to the router. > ssh admin@192.168.50.1 5. Write the OpenWrt image to flash. > mtd-write -i /tmp/openwrt-ramips-mt7621-asus_rt-ac65p-squashfs-factory.bin -d linux 6. Reboot the router > reboot Changelog: v3: removed [] from filename, rebased to latest master v2: Rebased to latest master v1: Initial release Signed-off-by: Gabor Varga --- .../ramips/base-files/etc/board.d/02_network | 2 + .../ramips/base-files/lib/upgrade/platform.sh | 2 + .../linux/ramips/dts/mt7621_asus_rt-ac65p.dts | 9 + .../linux/ramips/dts/mt7621_asus_rt-ac85p.dts | 157 +---------------- .../ramips/dts/mt7621_asus_rt-acx5p.dtsi | 159 ++++++++++++++++++ target/linux/ramips/image/mt7621.mk | 16 ++ 6 files changed, 190 insertions(+), 155 deletions(-) create mode 100644 target/linux/ramips/dts/mt7621_asus_rt-ac65p.dts create mode 100644 target/linux/ramips/dts/mt7621_asus_rt-acx5p.dtsi diff --git a/target/linux/ramips/base-files/etc/board.d/02_network b/target/linux/ramips/base-files/etc/board.d/02_network index b6c3ae42cba7..3c73a63aaeae 100755 --- a/target/linux/ramips/base-files/etc/board.d/02_network +++ b/target/linux/ramips/base-files/etc/board.d/02_network @@ -234,6 +234,7 @@ ramips_setup_interfaces() ucidef_add_switch "switch0" \ "0:lan" "1:wan" "6@eth0" ;; + asus,rt-ac65p|\ asus,rt-ac85p|\ dlink,dir-860l-b1|\ elecom,wrc-1167ghbk2-s|\ @@ -562,6 +563,7 @@ ramips_setup_macs() zbtlink,zbt-we3526) wan_mac=$(mtd_get_mac_binary factory 0xe006) ;; + asus,rt-ac65p|\ asus,rt-ac85p) wan_mac=$(mtd_get_mac_ascii u-boot-env et1macaddr) label_mac=$(cat /sys/class/ieee80211/phy0/macaddress) diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh index a62ded4b9de4..03e994dfa4c9 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -18,6 +18,7 @@ platform_do_upgrade() { mikrotik,rbm33g) [ -z "$(rootfs_type)" ] && mtd erase firmware ;; + asus,rt-ac65p|\ asus,rt-ac85p) echo "Backing up firmware" dd if=/dev/mtd4 bs=1024 count=4096 > /tmp/backup_firmware.bin @@ -27,6 +28,7 @@ platform_do_upgrade() { esac case "$board" in + asus,rt-ac65p|\ asus,rt-ac85p|\ hiwifi,hc5962|\ netgear,r6220|\ diff --git a/target/linux/ramips/dts/mt7621_asus_rt-ac65p.dts b/target/linux/ramips/dts/mt7621_asus_rt-ac65p.dts new file mode 100644 index 000000000000..94540e08e570 --- /dev/null +++ b/target/linux/ramips/dts/mt7621_asus_rt-ac65p.dts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "mt7621_asus_rt-acx5p.dtsi" + +/ { + compatible = "asus,rt-ac65p", "mediatek,mt7621-soc"; + model = "ASUS RT-AC65P"; +}; \ No newline at end of file diff --git a/target/linux/ramips/dts/mt7621_asus_rt-ac85p.dts b/target/linux/ramips/dts/mt7621_asus_rt-ac85p.dts index 3ddbfcfb7c86..9f525d26ce75 100644 --- a/target/linux/ramips/dts/mt7621_asus_rt-ac85p.dts +++ b/target/linux/ramips/dts/mt7621_asus_rt-ac85p.dts @@ -1,162 +1,9 @@ // SPDX-License-Identifier: GPL-2.0-or-later OR MIT /dts-v1/; -#include "mt7621.dtsi" - -#include -#include +#include "mt7621_asus_rt-acx5p.dtsi" / { compatible = "asus,rt-ac85p", "mediatek,mt7621-soc"; model = "ASUS RT-AC85P"; - - aliases { - led-boot = &led_power; - led-failsafe = &led_power; - led-running = &led_power; - led-upgrade = &led_power; - }; - - chosen { - bootargs = "console=ttyS0,57600"; - }; - - palmbus: palmbus@1E000000 { - i2c@900 { - status = "okay"; - }; - }; - - keys { - compatible = "gpio-keys"; - - reset { - label = "reset"; - gpios = <&gpio0 3 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - - wps { - label = "wps"; - gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - }; - - leds { - compatible = "gpio-leds"; - - led_power: power { - label = "rt-ac85p:blue:power"; - gpios = <&gpio0 4 GPIO_ACTIVE_LOW>; - linux,default-trigger = "phy0tpt"; - }; - wlan2g { - label = "rt-ac85p:blue:wlan2g"; - gpios = <&gpio0 10 GPIO_ACTIVE_LOW>; - linux,default-trigger = "phy0radio"; - }; - - wlan5g { - label = "rt-ac85p:blue:wlan5g"; - gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; - linux,default-trigger = "phy1radio"; - }; - }; -}; - -&sdhci { - status = "okay"; -}; - -&nand { - status = "okay"; - - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - - partition@0 { - label = "u-boot"; - reg = <0x0 0xe0000>; - read-only; - }; - - partition@e0000 { - label = "u-boot-env"; - reg = <0xe0000 0x100000>; - read-only; - }; - - factory: partition@1e0000 { - label = "factory"; - reg = <0x1e0000 0x100000>; - read-only; - }; - - factory2: partition@2e0000 { - label = "factory2"; - reg = <0x2e0000 0x100000>; - read-only; - }; - - partition@3e0000 { - label = "kernel"; - reg = <0x3e0000 0x400000>; - }; - - partition@7e0000 { - label = "ubi"; - reg = <0x7e0000 0x2e00000>; - }; - - partition@35e0000 { - label = "firmware2"; - reg = <0x35e0000 0x3200000>; - }; - }; -}; - -&pcie { - status = "okay"; -}; - -&pcie0 { - wifi0: wifi@0,0 { - compatible = "pci14c3,7615"; - reg = <0x0000 0 0 0 0>; - mediatek,mtd-eeprom = <&factory 0x0000>; - ieee80211-freq-limit = <2400000 2500000>; - }; -}; - -&pcie1 { - wifi1: wifi@0,0 { - compatible = "pci14c3,7615"; - reg = <0x0000 0 0 0 0>; - mediatek,mtd-eeprom = <&factory 0x8000>; - ieee80211-freq-limit = <5000000 6000000>; - }; -}; - -ðernet { - mtd-mac-address = <&factory 0xe000>; - mediatek,portmap = "wllll"; - port@5 { - status = "disabled"; - }; -}; - -&i2c { - status = "disabled"; -}; - -&pinctrl { - state_default: pinctrl0 { - gpio { - ralink,group = "uart2", "uart3", "i2c"; - ralink,function = "gpio"; - }; - }; -}; +}; \ No newline at end of file diff --git a/target/linux/ramips/dts/mt7621_asus_rt-acx5p.dtsi b/target/linux/ramips/dts/mt7621_asus_rt-acx5p.dtsi new file mode 100644 index 000000000000..d0f8a4b3caba --- /dev/null +++ b/target/linux/ramips/dts/mt7621_asus_rt-acx5p.dtsi @@ -0,0 +1,159 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "mt7621.dtsi" + +#include +#include + +/ { + aliases { + led-boot = &led_power; + led-failsafe = &led_power; + led-running = &led_power; + led-upgrade = &led_power; + }; + + chosen { + bootargs = "console=ttyS0,57600"; + }; + + palmbus: palmbus@1E000000 { + i2c@900 { + status = "okay"; + }; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + gpios = <&gpio0 3 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + + wps { + label = "wps"; + gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + }; + + leds { + compatible = "gpio-leds"; + + led_power: power { + label = "rt-ac85p:blue:power"; + gpios = <&gpio0 4 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy0tpt"; + }; + wlan2g { + label = "rt-ac85p:blue:wlan2g"; + gpios = <&gpio0 10 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy0radio"; + }; + + wlan5g { + label = "rt-ac85p:blue:wlan5g"; + gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy1radio"; + }; + }; +}; + +&sdhci { + status = "okay"; +}; + +&nand { + status = "okay"; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0xe0000>; + read-only; + }; + + partition@e0000 { + label = "u-boot-env"; + reg = <0xe0000 0x100000>; + read-only; + }; + + factory: partition@1e0000 { + label = "factory"; + reg = <0x1e0000 0x100000>; + read-only; + }; + + factory2: partition@2e0000 { + label = "factory2"; + reg = <0x2e0000 0x100000>; + read-only; + }; + + partition@3e0000 { + label = "kernel"; + reg = <0x3e0000 0x400000>; + }; + + partition@7e0000 { + label = "ubi"; + reg = <0x7e0000 0x2e00000>; + }; + + partition@35e0000 { + label = "firmware2"; + reg = <0x35e0000 0x3200000>; + }; + }; +}; + +&pcie { + status = "okay"; +}; + +&pcie0 { + wifi0: wifi@0,0 { + compatible = "pci14c3,7615"; + reg = <0x0000 0 0 0 0>; + mediatek,mtd-eeprom = <&factory 0x0000>; + ieee80211-freq-limit = <2400000 2500000>; + }; +}; + +&pcie1 { + wifi1: wifi@0,0 { + compatible = "pci14c3,7615"; + reg = <0x0000 0 0 0 0>; + mediatek,mtd-eeprom = <&factory 0x8000>; + ieee80211-freq-limit = <5000000 6000000>; + }; +}; + +ðernet { + mtd-mac-address = <&factory 0xe000>; + mediatek,portmap = "wllll"; + port@5 { + status = "disabled"; + }; +}; + +&i2c { + status = "disabled"; +}; + +&pinctrl { + state_default: pinctrl0 { + gpio { + ralink,group = "uart2", "uart3", "i2c"; + ralink,function = "gpio"; + }; + }; +}; diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk index 488837c5c75d..60d0131dc6c4 100644 --- a/target/linux/ramips/image/mt7621.mk +++ b/target/linux/ramips/image/mt7621.mk @@ -125,6 +125,22 @@ define Device/asus_rt-ac57u endef TARGET_DEVICES += asus_rt-ac57u +define Device/asus_rt-ac65p + MTK_SOC := mt7621 + DEVICE_VENDOR := ASUS + DEVICE_MODEL := RT-AC65P + IMAGE_SIZE := 51200k + UBINIZE_OPTS := -E 5 + BLOCKSIZE := 128k + PAGESIZE := 2048 + KERNEL_SIZE := 4096k + IMAGES += factory.bin + IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata + IMAGE/factory.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | check-size $$$$(IMAGE_SIZE) + DEVICE_PACKAGES := kmod-usb3 kmod-mt7615e wpad-basic uboot-envtools +endef +TARGET_DEVICES += asus_rt-ac65p + define Device/asus_rt-ac85p MTK_SOC := mt7621 DEVICE_VENDOR := ASUS -- 2.30.2