aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorINAGAKI Hiroshi <musashino.open@gmail.com>2019-08-26 20:27:22 +0900
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>2020-02-05 17:03:34 +0100
commit867db0a283864f3715dd4982a438fae9497e8b46 (patch)
tree89f3d5d236f0efb1d14ddf6abc109b810e3872e4
parent3c0e2aa63ef040dbfbd7fe5f05bc9dfaf5ae9242 (diff)
downloadupstream-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>
-rw-r--r--target/linux/ramips/dts/mt7621_iodata_wn-ax1167gr2.dts25
-rw-r--r--target/linux/ramips/image/mt7621.mk16
-rwxr-xr-xtarget/linux/ramips/mt7621/base-files/etc/board.d/02_network2
-rwxr-xr-xtarget/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh1
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"