openwrt/package/boot/uboot-envtools/files
Dim Fish f11e6e221e mediatek: filogic: add support for Xiaomi AX3000T
**SoC**: MediaTek MT7981B 2x A53
  **Flash**: ESMT F50L1G41LB 128MB
  **RAM**: NT52B128M16JR-FL 256MB
  **Ethernet**: 4x 10/100/1000 Mbps
  **Switch**: MediaTek MT7531AE
  **WiFi**: MediaTek MT7976C
  **Buttons**: Reset, Mesh
  **Power**: DC 12V 1A

1. Get ssh access. Supported stock firmware **1.0.47**
   ```
   curl -X POST "http://192.168.31.1/cgi-bin/luci/;stok=*******/api/misystem/arn_switch" -d "open=1&model=1&level=%0Anvram%20set%20ssh_en%3D1%0A"
   curl -X POST "http://192.168.31.1/cgi-bin/luci/;stok=*******/api/misystem/arn_switch" -d "open=1&model=1&level=%0Anvram%20commit%0A"
   curl -X POST "http://192.168.31.1/cgi-bin/luci/;stok=*******/api/misystem/arn_switch" -d "open=1&model=1&level=%0Ased%20-i%20's%2Fchannel%3D.*%2Fchannel%3D%22debug%22%2Fg'%20%2Fetc%2Finit.d%2Fdropbear%0A"
   curl -X POST "http://192.168.31.1/cgi-bin/luci/;stok=*******/api/misystem/arn_switch" -d "open=1&model=1&level=%0A%2Fetc%2Finit.d%2Fdropbear%20start%0A"
   curl -X POST "http://192.168.31.1/cgi-bin/luci/;stok=********/api/misystem/arn_switch" -d "open=1&model=1&level=%0Apasswd%20-d%20root%0A
   ```

2. Backup stock partitions
   ```
   nanddump -f /tmp/BL2.bin /dev/mtd1
   nanddump -f /tmp/Nvram.bin /dev/mtd2
   nanddump -f /tmp/Bdata.bin /dev/mtd3
   nanddump -f /tmp/Factory.bin /dev/mtd4
   nanddump -f /tmp/FIP.bin /dev/mtd5
   nanddump -f /tmp/ubi.bin /dev/mtd8
   nanddump -f /tmp/KF.bin /dev/mtd12
   ```
   Then transfer them to your computer in a safe place.

3. Get firmware information `cat /proc/cmdline`

4. Copy openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-initramfs-factory.ubi to **/tmp** and flash
   If **firmware=0**
   ```
   ubiformat /dev/mtd9 -y -f /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-initramfs-factory.ubi
   nvram set boot_wait=on
   nvram set uart_en=1
   nvram set flag_boot_rootfs=1
   nvram set flag_last_success=1
   nvram set flag_boot_success=1
   nvram set flag_try_sys1_failed=0
   nvram set flag_try_sys2_failed=0
   nvram commit
   reboot
   ```
   If **firmware=1**
   ```
   ubiformat /dev/mtd8 -y -f /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-initramfs-factory.ubi
   nvram set boot_wait=on
   nvram set uart_en=1
   nvram set flag_boot_rootfs=0
   nvram set flag_last_success=0
   nvram set flag_boot_success=1
   nvram set flag_try_sys1_failed=0
   nvram set flag_try_sys2_failed=0
   nvram commit
   reboot
   ```

   Then reboot your router, it should boot to the OpenWrt initramfs system now.

5. Flash openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-squashfs-sysupgrade.bin
   `sysupgrade -n /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-squashfs-sysupgrade.bin`

1. Flash openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-ubootmod-initramfs-recovery.itb
   `ubiformat /dev/mtd8 -y -f /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-ubootmod-initramfs-recovery.itb`

   `reboot`

2. Install kmod-mtd-rw
   `opkg update && opkg install kmod-mtd-rw`

   `insmod /lib/modules/$(uname -r)/mtd-rw.ko i_want_a_brick=1`

3. Format ubi and create new ubootenv volume
   ```
   ubidetach -p /dev/mtd8; ubiformat /dev/mtd8 -y; ubiattach -p /dev/mtd8
   ubimkvol /dev/ubi0 -n 0 -N ubootenv -s 128KiB
   ubimkvol /dev/ubi0 -n 1 -N ubootenv2 -s 128KiB
   ```

4. *(Optional **-10Mb** free space) Add recovery boot feature.*
   ```
   ubimkvol /dev/ubi0 -n 2 -N recovery -s 10MiB
   ubiupdatevol /dev/ubi0_2 /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-ubootmod-initramfs-recovery.itb
   ```

5. Flash Openwrt U-Boot
   ```
   mtd write /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-ubootmod-preloader.bin BL2
   mtd write /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-ubootmod-bl31-uboot.fip FIP
   ```

6. Flash openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-ubootmod-squashfs-sysupgrade.itb
   `sysupgrade -n /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-ubootmod-squashfs-sysupgrade.itb`

1. Force flash openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-ubootmod-initramfs-recovery.itb
   `sysupgrade -F -n /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-ubootmod-initramfs-recovery.itb`

2. Format ubi and Nvram
   ```
   ubidetach -p /dev/mtd8; ubiformat /dev/mtd8 -y; ubiattach -p /dev/mtd8
   mtd erase Nvram
   ```

3. Install kmod-mtd-rw
   `opkg update && opkg install kmod-mtd-rw`

   `insmod /lib/modules/$(uname -r)/mtd-rw.ko i_want_a_brick=1`

4. Flash stock images from backup
   ```
   mtd write /tmp/BL2.bin BL2
   mtd write /tmp/FIP.bin FIP
   mtd write /tmp/ubi.bin ubi
   ```
   Then reboot your router, waiting it finished rollback in minutes.

   `ubiformat /dev/mtd7 -y -f /tmp/ubi.bin`
   Then reboot your router, waiting it finished rollback in minutes.

Signed-off-by: Dim Fish <dimfish@gmail.com>
(cherry picked from commit 7dbcc1215a)
2024-05-23 21:50:00 +02:00
..
apm821xx apm821xx: MBL: make mtd chip work 2022-06-19 12:31:02 +02:00
ath79 ath79: add support for Huawei AP5030DN 2024-04-03 02:56:56 +02:00
cns3xxx uboot-envtools: drop shebang from uci-defaults and lib files 2021-04-10 15:18:14 +02:00
fw_printsys uboot-envtools: add wrapper scripts for alternate config 2021-04-08 09:20:59 +02:00
fw_setsys uboot-envtools: add wrapper scripts for alternate config 2021-04-08 09:20:59 +02:00
imx_cortexa7 uboot-envtools: imx: cortexa7: add TechNexion PICO-PI-IMX7D 2022-07-11 14:28:03 +02:00
imx_cortexa9 uboot-envtools: move imx to imx_cortexa9 2021-11-03 12:45:40 +01:00
ipq40xx uboot-envtools: ipq40xx: fix WHW03V2 mtd partition 2023-01-18 00:07:30 +01:00
ipq806x ipq806x: add support for Nokia Airscale AC400i 2023-03-19 18:02:34 +01:00
ipq807x ipq807x: add initial support for prpl Foundation Haze board 2023-06-12 22:10:29 +02:00
kirkwood kirkwood: add ix4-200d support to uboot-envtools 2024-03-23 14:58:33 +01:00
lantiq uboot-envtools: drop shebang from uci-defaults and lib files 2021-04-10 15:18:14 +02:00
layerscape layerscape: remove Traverse LS1043 boards 2023-07-26 13:36:58 +02:00
mediatek_filogic mediatek: filogic: add support for Xiaomi AX3000T 2024-05-23 21:50:00 +02:00
mediatek_mt7622 uboot-envtools: mt7622: bpi-r64: fix env selection 2023-01-29 03:43:58 +00:00
mediatek_mt7623 uboot-envtools: add configuration for UniElec U7623 board 2022-01-23 20:20:42 +00:00
mediatek_mt7629 mediatek: add support for Netgear EX6250v2 series 2023-07-13 12:05:28 +01:00
mpc85xx mpc85xx: add support for Enterasys WS-AP3715i 2023-04-08 14:41:01 +02:00
mvebu mvebu: add support for Buffalo LinkStation LS220DE 2023-02-26 22:22:48 +01:00
mxs uboot-envtools: drop shebang from uci-defaults and lib files 2021-04-10 15:18:14 +02:00
oxnas uboot-envtools: oxnas: fix wrong eraseblock size for shuttle,kd20 2022-03-21 20:16:16 +00:00
pistachio uboot-envtools: drop shebang from uci-defaults and lib files 2021-04-10 15:18:14 +02:00
qoriq qoriq: add support for WatchGuard Firebox M300 2021-12-21 21:37:46 +02:00
ramips ramips: add support for Rostelecom RT-FE-1A 2024-01-04 21:45:04 +01:00
realtek uboot-envtools: add support for APRESIA ApresiaLightGS120GT-SS 2023-02-13 12:22:17 +01:00
uboot-envtools.sh uboot-envtools: add support for multiple config partitions 2021-04-08 09:20:59 +02:00