diff options
author | INAGAKI Hiroshi <musashino.open@gmail.com> | 2019-08-26 20:27:22 +0900 |
---|---|---|
committer | Adrian Schmutzler <freifunk@adrianschmutzler.de> | 2020-02-05 17:03:34 +0100 |
commit | 867db0a283864f3715dd4982a438fae9497e8b46 (patch) | |
tree | 89f3d5d236f0efb1d14ddf6abc109b810e3872e4 | |
parent | 3c0e2aa63ef040dbfbd7fe5f05bc9dfaf5ae9242 (diff) | |
download | upstream-867db0a283864f3715dd4982a438fae9497e8b46.tar.gz upstream-867db0a283864f3715dd4982a438fae9497e8b46.tar.bz2 upstream-867db0a283864f3715dd4982a438fae9497e8b46.zip |
ramips: add support for I-O DATA WN-AX1167GR2
I-O DATA WN-AX1167GR2 is a 2.4/5 GHz band 11ac router, based on MediaTek
MT7621A.
Specification:
- SoC : MediaTek MT7621A
- RAM : DDR3 128 MiB
- Flash : NAND 128 MiB
- WLAN : MediaTek MT7615D (2.4/5 GHz, 2T2R)
- Ethernet : 5x 10/100/1000 Mbps
- Switch : MediaTek MT7621A (MT7530)
- LEDs/Input : 2x/3x (2x buttons, 1x slide-switch)
- UART : through-hole on PCB
- J5: Vcc, TX, RX, NC, GND
- 57600 bps
Flash instruction using initramfs image:
1. Boot WN-AX1167GR2 normally
2. Access to "http://192.168.0.1/" and open firmware update page
("ファームウェア")
3. Select the OpenWrt initramfs image and click update ("更新")
button to perform firmware update
4. On the initramfs image, perform sysupgrade with squashfs-sysupgrade
image
5. Wait ~120 seconds to complete flashing
Notes:
- configuration in DeviceTree of DBDC (Dual-Band-Dual-Concurrent) mode
for MT7615D chip is not supported in mt76 driver
- last 0x80000 (512 KiB) in NAND flash is not used on stock firmware
- stock firmware requires "customized uImage header" by MSTC
(MitraStar Technology Corp.), but U-Boot doesn't
- uImage magic (0x0 - 0x3) : 0x434F4D42 (COMB)
- header crc32 (0x4 - 0x7) : with data length and data crc32
- image name (0x20 - 0x37) : model ID and firmware versions
- data length (0x38 - 0x3b): kernel + rootfs
- data crc32 (0x3c - 0x3f) : kernel + rootfs
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Reviewed-by: Sungbo Eo <mans0n@gorani.run>
4 files changed, 44 insertions, 0 deletions
diff --git a/target/linux/ramips/dts/mt7621_iodata_wn-ax1167gr2.dts b/target/linux/ramips/dts/mt7621_iodata_wn-ax1167gr2.dts new file mode 100644 index 0000000000..251caf4250 --- /dev/null +++ b/target/linux/ramips/dts/mt7621_iodata_wn-ax1167gr2.dts @@ -0,0 +1,25 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "mt7621_iodata_wn-xx-xr.dtsi" + +/ { + compatible = "iodata,wn-ax1167gr2", "mediatek,mt7621-soc"; + model = "I-O DATA WN-AX1167GR2"; +}; + +&partitions { + partition@6b00000 { + label = "Backup"; + reg = <0x6b00000 0x1480000>; + read-only; + }; +}; + +&pcie1 { + wifi@0,0 { + compatible = "mediatek,mt76"; + reg = <0x0000 0 0 0 0>; + mediatek,mtd-eeprom = <&factory 0x0>; + }; +}; diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk index b66842e880..17b32653e7 100644 --- a/target/linux/ramips/image/mt7621.mk +++ b/target/linux/ramips/image/mt7621.mk @@ -352,6 +352,22 @@ define Device/iodata_wn-ax1167gr endef TARGET_DEVICES += iodata_wn-ax1167gr +define Device/iodata_wn-ax1167gr2 + BLOCKSIZE := 128k + PAGESIZE := 2048 + UBINIZE_OPTS := -E 5 + UIMAGE_MAGIC := 0x434f4d42 + KERNEL_SIZE := 4096k + IMAGE_SIZE := 51200k + DEVICE_VENDOR := I-O DATA + DEVICE_MODEL := WN-AX1167GR2 + KERNEL_INITRAMFS := $(KERNEL_DTB) | custom-initramfs-uimage 3.10(XBC.1)b10 | \ + iodata-mstc-header + IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata + DEVICE_PACKAGES := kmod-mt7615e wpad-basic +endef +TARGET_DEVICES += iodata_wn-ax1167gr2 + define Device/iodata_wn-dx1167r BLOCKSIZE := 128k PAGESIZE := 2048 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 ffe5793a6e..c0412626f2 100755 --- a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network +++ b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network @@ -72,6 +72,7 @@ ramips_setup_interfaces() elecom,wrc-1900gst|\ elecom,wrc-2533gst|\ iodata,wn-ax1167gr|\ + iodata,wn-ax1167gr2|\ iodata,wn-dx1167r|\ iodata,wn-gx300gr|\ iodata,wnpr2600g|\ @@ -223,6 +224,7 @@ ramips_setup_macs() xiaoyu,xy-c5) wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 1) ;; + iodata,wn-ax1167gr2|\ iodata,wn-dx1167r|\ xiaomi,mir3g-v2) wan_mac=$(mtd_get_mac_binary factory 0xe006) diff --git a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh index e27f9df387..6e0e8a6b2c 100755 --- a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh @@ -53,6 +53,7 @@ platform_do_upgrade() { xiaomi,mir3p) nand_do_upgrade "$1" ;; + iodata,wn-ax1167gr2|\ iodata,wn-dx1167r) iodata_mstc_upgrade_prepare nand_do_upgrade "$1" |