openwrt/package/boot
Richard Huynh 9f9477b275 mediatek: Add support for Xiaomi Redmi Router AX6S
Also known as the "Xiaomi Router AX3200" in western markets,
but only the AX6S is widely installation-capable at this time.

SoC: MediaTek MT7622B
RAM: DDR3 256 MiB (ESMT M15T2G16128A)
Flash: SPI-NAND 128 MiB (ESMT F50L1G41LB or Gigadevice GD5F1GQ5xExxG)
WLAN: 2.4/5 GHz 4T4R
2.4 GHz: MediaTek MT7622B
5 GHz: MediaTek MT7915E
Ethernet: 4x 10/100/1000 Mbps
Switch: MediaTek MT7531B
LEDs/Keys: 2/2 (Internet + System LED, Mesh button + Reset pin)
UART: Marked J1 on board VCC RX GND TX, beginning from "1". 3.3v, 115200n8
Power: 12 VDC, 1.5 A

Notes:
U-Boot passes through the ethaddr from uboot-env partition,
but also has been known to reset it to a generic mac address
hardcoded in the bootloader.

However, bdata is also populated with the ethernet mac addresses,
but is also typically never written to. Thus this is used instead.

Installation:
1. Flash stock Xiaomi "closed beta" image labelled
'miwifi_rb03_firmware_stable_1.2.7_closedbeta.bin'.
(MD5: 5eedf1632ac97bb5a6bb072c08603ed7)

2. Calculate telnet password from serial number and login

3. Execute commands to prepare device
nvram set ssh_en=1
nvram set uart_en=1
nvram set boot_wait=on
nvram set flag_boot_success=1
nvram set flag_try_sys1_failed=0
nvram set flag_try_sys2_failed=0
nvram commit

4. Download and flash image
On computer:
python -m http.server
On router:
cd /tmp
wget http://<IP>:8000/factory.bin
mtd -r write factory.bin firmware

Device should reboot at this point.

Reverting to stock:
Stock Xiaomi recovery tftp that accepts their signed images,
with default ips of 192.168.31.1 + 192.168.31.100.
Stock image should be renamed to tftp server ip in hex (Eg. C0A81F64.img)
Triggered by holding reset pin on powerup.

A simple implementation of this would be via dnsmasq's
dhcp-boot option or using the vendor's (Windows only)
recovery tool available on their website.

Signed-off-by: Richard Huynh <voxlympha@gmail.com>
2022-03-20 18:33:39 +00:00
..
arm-trusted-firmware-bcm63xx arm-trusted-firmware-bcm63xx: add ATF for Broadcom devices 2021-12-24 22:42:03 +01:00
arm-trusted-firmware-mediatek
arm-trusted-firmware-mvebu arm-trusted-firmware-mvebu: bump mv-ddr-marvell to current version 2021-11-27 19:36:36 +01:00
arm-trusted-firmware-rockchip
arm-trusted-firmware-sunxi
arm-trusted-firmware-tools
at91bootstrap at91: add support for sama7g5-ek board 2022-02-24 19:05:29 +01:00
fconfig
grub2 x86: grub2: search for the "kernel" filesystem on all disks 2022-02-24 20:45:12 +01:00
imx-bootlets
kexec-tools
kobs-ng
mt7623n-preloader
tfa-layerscape layerscape: use semantic versions for LSDK 2022-03-01 00:01:18 +01:00
uboot-at91 at91: add support for sama7g5-ek board 2022-02-24 19:05:29 +01:00
uboot-bcm4908 uboot-bcm4908: add BCM4912 build 2022-03-15 18:43:41 +01:00
uboot-envtools mediatek: Add support for Xiaomi Redmi Router AX6S 2022-03-20 18:33:39 +00:00
uboot-fritz4040
uboot-imx
uboot-kirkwood
uboot-lantiq uboot-lantiq: danube: fix hanging lzma kernel uncompression #2 2021-11-27 21:49:10 +01:00
uboot-layerscape layerscape: use semantic versions for LSDK 2022-03-01 00:01:18 +01:00
uboot-mediatek uboot-mediatek: update to version 2022.01 2022-01-23 20:20:53 +00:00
uboot-mvebu uboot-mvebu: backport patch to fix nvme detail crash 2022-03-05 21:05:24 +01:00
uboot-mxs
uboot-omap uboot-omap: Remove omap3_overo configuration 2021-11-28 22:26:27 +01:00
uboot-oxnas
uboot-ramips
uboot-rockchip
uboot-sunxi
uboot-tegra
uboot-zynq