[OpenWrt-Devel] [PATCH v3] ramips: add Asus RT-AC85P

Gábor Varga vargagab at gmail.com
Mon Aug 5 04:13:54 EDT 2019


As I wrote to Birger, I think the Asus RT-AC85P and the Asus RT-AC65P
boards - despite the Asus specifications and the Wikidevi informations -
are identical.

1. As you can see, the board ha 3 external and 1 internal antenna:
https://drive.google.com/open?id=1cOlX_P2O-UtMcjFVxJT54Sodn8cmxp0_
2. On the Asus RT-AC65P board are two MT7615N radios:
https://drive.google.com/open?id=1jfMKkwtNuOiYyegT2Mtu--n1QY6Xr3Vx,
https://drive.google.com/open?id=1TIVwYlEAraymv4y8piAARNIew6XVP7sY
3. The Asus factory firmware says too, that the device has a 600 Mbps and
an 1733 Mbps radio:
admin at RT-AC65P:/tmp/home/root# iwconfig ra0
ra0 RTWIFI SoftAP ESSID:"AC65p_24"
Mode:Managed Channel=3 Access Point: 04:92:26:47:56:08
Bit Rate=600 Mb/s

admin at RT-AC65P:/tmp/home/root# iwconfig rai0
rai0 RTWIFI SoftAP ESSID:"AC65p_5"
Mode:Managed Channel=36 Access Point: 04:92:26:47:56:0C
Bit Rate=1.732 Gb/s

Gabor Varga

Birger Koblitz <mail at birger-koblitz.de> ezt írta (időpont: 2019. aug. 4.,
V, 6:46):

> ramips: add Asus RT-AC85P
>
> SoC:    MediaTek MT7621AT dual-core @ 880MHz
> RAM:    256M (Winbond W632GG6KB-1)
> FLASH:    128MB (Macronix MX30LF1G18AC-TI)
> WiFi:    - 2.4GHz MediaTek MT7615N bgn
>     - 5GHz MediaTek MT7615N nac
> Switch: SoC integrated Gigabit Switch (4 x LAN, 1 x WAN)
> USB:    1 x USB 3.1 (Gen 1)
> BTN:    Reset, WPS
> LED:    - Power (blue)
>     - 5Ghz (blue)
>     - 2.4GHz (blue)
>     - Internet (blue)
>     - 4x LAN (blue)
>     (LAN/WAN leds are not controllable by GPIOs)
> UART:     UART is present as Pads marked J4 on the PCB.
>     3.3V - TX - RX - GND / 57600-8N1
>     3.3V is the square pad
> MAC:    The MAC address on the router-label matches the MAC of
>     the 2.4 GHz WiFi.
>     LAN and WAN MAC are identical: MAC_LABEL+4
>     5 GHz WiFi MAC: also MAC_LABEL+4
>
>
> Installation
> ------------
> Via U-Boot tftpd:
> Switch on device, within 2s press reset button and keep pressed
> until power LED starts blinking slowly.
> Upload factory image via tftp put, the router's ip is 192.168.1.1
> and expects the client on 192.168.1.75.
>
> The images also work on the Asus RT-AC65P models as tested by Gabor.
>
> Signed-off-by: Birger Koblitz <mail at birger-koblitz.de>
> Tested-by: Gabor Varga <vargagab at gmail.com>
>
> ---
>
> v2: Corrected sorting of entries in 02_network
>     Model name corrected in .dts
>     Whitespace fixes in .dts
>     wifi0/1 labels added to wifi nodes in .dts
>     Device name capitalized in mt7621.mk
>
> v3: Added firmware backup to firmware2 partition before sysupgrade
>     Corrected modules included in image
>
> 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 2f9a02256e..ab90041d92 100755
> --- a/target/linux/ramips/base-files/etc/board.d/02_network
> +++ b/target/linux/ramips/base-files/etc/board.d/02_network
> @@ -231,6 +231,17 @@ ramips_setup_interfaces()
>          ucidef_add_switch "switch0" \
>              "0:lan" "1:wan" "6 at eth0"
>          ;;
> +    asus,rt-ac85p|\
> +    dlink,dir-860l-b1|\
> +    elecom,wrc-1167ghbk2-s|\
> +    elecom,wrc-1900gst|\
> +    elecom,wrc-2533gst|\
> +    huawei,hg255d|\
> +    iodata,wn-ax1167gr|\
> +    iodata,wn-gx300gr)
> +        ucidef_add_switch "switch0" \
> +            "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6 at eth0"
> +        ;;
>      asus,rt-n15|\
>      belkin,f9k1109v1|\
>      sitecom,wl-351)
> @@ -298,16 +309,6 @@ ramips_setup_interfaces()
>          ucidef_add_switch "switch0" \
>              "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan:5" "6 at eth0"
>          ;;
> -    dlink,dir-860l-b1|\
> -    elecom,wrc-1167ghbk2-s|\
> -    elecom,wrc-1900gst|\
> -    elecom,wrc-2533gst|\
> -    huawei,hg255d|\
> -    iodata,wn-ax1167gr|\
> -    iodata,wn-gx300gr)
> -        ucidef_add_switch "switch0" \
> -            "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6 at eth0"
> -        ;;
>      dlink,dwr-118-a1)
>          ucidef_add_switch "switch0" \
>              "1:lan:2" "2:lan:3" "3:lan:1" "4:lan:0" "5:wan" "6 at eth0"
> @@ -531,6 +532,9 @@ ramips_setup_macs()
>          lan_mac=$(mtd_get_mac_binary factory 57344)
>          wan_mac=$(mtd_get_mac_binary factory 57350)
>          ;;
> +    asus,rt-ac85p)
> +        wan_mac=$(mtd_get_mac_ascii u-boot-env et1macaddr)
> +        ;;
>      asus,rt-n56u)
>          lan_mac=$(macaddr_setbit_la "$(cat /sys/class/net/eth0/address)")
>          wan_mac=$(mtd_get_mac_binary factory 32772)
> diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh
> b/target/linux/ramips/base-files/lib/upgrade/platform.sh
> index a65492a309..cd9d8ae650 100755
> --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh
> +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh
> @@ -18,9 +18,16 @@ platform_do_upgrade() {
>      mikrotik,rbm33g)
>          [ -z "$(rootfs_type)" ] && mtd erase firmware
>          ;;
> +       asus,rt-ac85p)
> +        echo "Backing up firmware"
> +        dd if=/dev/mtd4 bs=1024 count=4096  > /tmp/backup_firmware.bin
> +        dd if=/dev/mtd5 bs=1024 count=52224 >> /tmp/backup_firmware.bin
> +        mtd -e firmware2 write /tmp/backup_firmware.bin firmware2
> +        ;;
>      esac
>
>      case "$board" in
> +    asus,rt-ac85p|\
>      hiwifi,hc5962|\
>      netgear,r6220|\
>      netgear,r6350|\
> diff --git a/target/linux/ramips/dts/mt7621_asus_rt-ac85p.dts
> b/target/linux/ramips/dts/mt7621_asus_rt-ac85p.dts
> new file mode 100644
> index 0000000000..7aea207fad
> --- /dev/null
> +++ b/target/linux/ramips/dts/mt7621_asus_rt-ac85p.dts
> @@ -0,0 +1,164 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
> +/dts-v1/;
> +
> +#include "mt7621.dtsi"
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/input/input.h>
> +
> +/ {
> +    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 at 1E000000 {
> +        i2c at 900 {
> +            status = "okay";
> +        };
> +    };
> +
> +    keys {
> +        compatible = "gpio-keys";
> +
> +        reset {
> +            label = "reset";
> +            gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
> +            linux,code = <KEY_RESTART>;
> +        };
> +
> +        wps {
> +            label = "wps";
> +            gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
> +            linux,code = <KEY_WPS_BUTTON>;
> +        };
> +    };
> +
> +    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 at 0 {
> +            label = "u-boot";
> +            reg = <0x0 0xe0000>;
> +            read-only;
> +        };
> +
> +        partition at e0000 {
> +            label = "u-boot-env";
> +            reg = <0xe0000 0x100000>;
> +            read-only;
> +        };
> +
> +        factory: partition at 1e0000 {
> +            label = "factory";
> +            reg = <0x1e0000 0x100000>;
> +            read-only;
> +        };
> +
> +        factory2: partition at 2e0000 {
> +            label = "factory2";
> +            reg = <0x2e0000 0x100000>;
> +            read-only;
> +        };
> +
> +        partition at 3e0000 {
> +            label = "kernel";
> +            reg = <0x3e0000 0x400000>;
> +        };
> +
> +        partition at 7e0000 {
> +            label = "ubi";
> +            reg = <0x7e0000 0x2e00000>;
> +        };
> +
> +        partition at 35e0000 {
> +            label = "firmware2";
> +            reg = <0x35e0000 0x3200000>;
> +        };
> +    };
> +};
> +
> +&pcie {
> +    status = "okay";
> +};
> +
> +&pcie0 {
> +    wifi0: wifi at 0,0 {
> +        compatible = "pci14c3,7603";
> +        reg = <0x0000 0 0 0 0>;
> +        mediatek,mtd-eeprom = <&factory 0x0000>;
> +        ieee80211-freq-limit = <2400000 2500000>;
> +        mtd-mac-address = <&factory 0x4>;
> +    };
> +};
> +
> +&pcie1 {
> +    wifi1: wifi at 0,0 {
> +        compatible = "pci14c3,7662";
> +        reg = <0x0000 0 0 0 0>;
> +        mediatek,mtd-eeprom = <&factory 0x8000>;
> +        ieee80211-freq-limit = <5000000 6000000>;
> +        mtd-mac-address = <&factory 0x8004>;
> +    };
> +};
> +
> +&ethernet {
> +    mtd-mac-address = <&factory 0xe000>;
> +    mediatek,portmap = "wllll";
> +    port at 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 d86eb8cc34..c036a1c308 100644
> --- a/target/linux/ramips/image/mt7621.mk
> +++ b/target/linux/ramips/image/mt7621.mk
> @@ -115,6 +115,22 @@ define Device/asus_rt-ac57u
>  endef
>  TARGET_DEVICES += asus_rt-ac57u
>
> +define Device/asus_rt-ac85p
> +  MTK_SOC := mt7621
> +  DEVICE_VENDOR := ASUS
> +  DEVICE_MODEL := RT-AC85P
> +  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-ac85p
> +
>  define Device/buffalo_wsr-1166dhp
>    MTK_SOC := mt7621
>    IMAGE/sysupgrade.bin := trx | pad-rootfs | append-metadata
> diff --git
> a/target/linux/ramips/patches-4.14/0039-mtd-add-mt7621-nand-support.patch
> b/target/linux/ramips/patches-4.14/0039-mtd-add-mt7621-nand-support.patch
> index d50e689110..d2d69b4ff4 100644
> ---
> a/target/linux/ramips/patches-4.14/0039-mtd-add-mt7621-nand-support.patch
> +++
> b/target/linux/ramips/patches-4.14/0039-mtd-add-mt7621-nand-support.patch
> @@ -4256,7 +4256,7 @@ Signed-off-by: John Crispin <blogic at openwrt.org>
>  +#endif /* __NAND_DEF_H__ */
>  --- /dev/null
>  +++ b/drivers/mtd/nand/nand_device_list.h
> -@@ -0,0 +1,59 @@
> +@@ -0,0 +1,60 @@
>  +/* Copyright Statement:
>  + *
>  + * This software/firmware and related documentation ("MediaTek
> Software") are
> @@ -4308,6 +4308,7 @@ Signed-off-by: John Crispin <blogic at openwrt.org>
>  +    {0xC8DC, 0x909554, 5, 8, 512, 128, 2048, 64, 0x30C77fff,
> "F59L4G81A", 0},
>  +    {0xECD3, 0x519558, 5, 8, 1024, 128, 2048, 64, 0x44333,
> "K9K8G8000", 0},
>  +    {0xC2F1, 0x801DC2, 4, 8, 128, 128, 2048, 64, 0x30C77fff,
> "MX30LF1G08AA", 0},
> ++    {0xC2F1, 0x809502, 4, 8, 128, 128, 2048, 64, 0x30C77fff,
> "MX30LF1G18AC", 0},
>  +    {0x98D3, 0x902676, 5, 8, 1024, 256, 4096, 224, 0x00C25332,
> "TC58NVG3S0F", 0},
>  +    {0x01DA, 0x909546, 5, 8, 256, 128, 2048, 128, 0x30C77fff,
> "S34ML02G200TF", 0},
>  +    {0x01DC, 0x909556, 5, 8, 512, 128, 2048, 128, 0x30C77fff,
> "S34ML04G200TF", 0},
>
>
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel at lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.infradead.org/pipermail/openwrt-devel/attachments/20190805/d227eb94/attachment.htm>
-------------- next part --------------
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list