OpenWrt support for Xiaomi AX3000T

by defaut adress?

*** Loading image ***

Input load address: 0x46000000

This address I do not know, why another is 0x48000000?

you have to decide yourself.

im afraid to brick the router that i ask Sorry enter By Default?

check your logs, it should be 0x46000000.

but, the instructions:

Summary

1 Like

tanx write and run on iniramfs
after get ip and now
flash sysupgrade ?
snap shot Or 23.05.4

V23.05.4 is OK
(https://downloads.openwrt.org/releases/23.05.4/targets/mediatek/filogic/openwrt-23.05.4-mediatek-filogic-xiaomi_mi-router-ax3000t-squashfs-sysupgrade.bin)

1 Like

first run is ok and finish get ip
after normaly reboot error Show

Summary

*** U-Boot Boot Menu ***

 1. Startup system (Default)
 2. Startup firmware0
 3. Startup firmware1
 4. Upgrade firmware
 5. Upgrade ATF BL2
 6. Upgrade ATF FIP
 7. Upgrade single image
 8. Load image
 0. U-Boot console

Press UP/DOWN to move, ENTER to select, ESC/CTRL+C to quit
detect button reset released!
Reading from 0x0 to 0x4f7fdd7c, size 0x4 ... OK
Reading from 0x0 to 0x4f7fdd7c, size 0x4 ... OK
Saving Environment to MTD... Erasing on MTD device 'nmbm0'... OK
Writing to MTD device 'nmbm0'... OK
OK
[Dual Image] Booting System 1, sys1_failed = 0, sys2_failed = 0
ubi0: attaching mtd10
ubi0: scanning is finished
ubi0 error: vtbl_check: too large reserved_pebs 564, good PEBs 272
ubi0 error: vtbl_check: volume table check failed: record 1, error 9
Volume table record 1 dump:
reserved_pebs 564
alignment 1
data_pad 0
vol_type 1
upd_marker 0
name_len 11
name rootfs_data
crc 0xaf0c46c7
ubi0 error: ubi_attach_mtd_dev: failed to attach mtd10, error -22
UBI error: cannot attach mtd10
UBI error: cannot initialize UBI, error -22
*** Failed to attach UBI ***
*** Rebuilding UBI ***
Erasing from 0x0 to 0x21fffff, size 0x2200000 ... OK
*** UBI is read-only mode ***
resetting ...

did you sysupgrade?

1 Like

yes from luci in the web interface upgrade luci and boot normally work good after normal reboot or off and on this error show and boot loop again

after some time reboot on boot loop error chnange .see log plz

Summary

*** U-Boot Boot Menu ***

 1. Startup system (Default)
 2. Startup firmware0
 3. Startup firmware1
 4. Upgrade firmware
 5. Upgrade ATF BL2
 6. Upgrade ATF FIP
 7. Upgrade single image
 8. Load image
 0. U-Boot console

Press UP/DOWN to move, ENTER to select, ESC/CTRL+C to quit
detect button reset released!
Reading from 0x0 to 0x4f7fdd7c, size 0x4 ... OK
Reading from 0x0 to 0x4f7fdd7c, size 0x4 ... OK
Saving Environment to MTD... Erasing on MTD device 'nmbm0'... OK
Writing to MTD device 'nmbm0'... OK
OK
[Dual Image] Booting System 0, sys1_failed = 0, sys2_failed = 1
ubi0: attaching mtd9
ubi0: scanning is finished
ubi0: attached mtd9 (name "ubi", size 34 MiB)
ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
ubi0: good PEBs: 272, bad PEBs: 0, corrupted PEBs: 0
ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128
ubi0: max/mean erase counter: 5/3, WL threshold: 4096, image sequence number: 1368499774
ubi0: available PEBs: 219, total reserved PEBs: 53, PEBs reserved for bad PEB handling: 19
Reading from volume 'kernel' to 0x46000000, size 0x0 ... OK

Loading kernel from FIT Image at 46000000 ...

Using 'config-1' configuration
Trying 'kernel-1' kernel subimage
Description: ARM64 OpenWrt Linux-5.15.162
Type: Kernel Image
Compression: lzma compressed
Data Start: 0x460000ec
Data Size: 3779606 Bytes = 3.6 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x48000000
Entry Point: 0x48000000
Hash algo: crc32
Hash value: 624b7245
Hash algo: sha1
Hash value: e3924699188732e38a91628104f700e25f3698fa
Verifying Hash Integrity ... crc32+ sha1+ OK

Loading fdt from FIT Image at 46000000 ...

Using 'config-1' configuration
Trying 'fdt-1' fdt subimage
Description: ARM64 OpenWrt xiaomi_mi-router-ax3000t device tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x4639ae4c
Data Size: 22874 Bytes = 22.3 KiB
Architecture: AArch64
Hash algo: crc32
Hash value: 5b871b54
Hash algo: sha1
Hash value: d8aedfaf36f563c8615b35711eb51cc446e917c7
Verifying Hash Integrity ... crc32+ sha1+ OK
Booting using the fdt blob at 0x4639ae4c
Uncompressing Kernel Image
Loading Device Tree to 000000004f7f0000, end 000000004f7f8959 ... OK

Starting kernel ...

[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 5.15.162 (builder@buildhost) (aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 12.3.0 r24012-d8dd03c46f) 12.3.0, GNU ld (GNU Binutils) 2.40.0) #0 SMP Mon Jul 15 22:14:18 2024
[ 0.000000] Machine model: Xiaomi Mi Router AX3000T
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000040000000-0x000000004fffffff]
[ 0.000000] DMA32 empty
[ 0.000000] Normal empty
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000040000000-0x0000000042ffffff]
[ 0.000000] node 0: [mem 0x0000000043000000-0x000000004302ffff]
[ 0.000000] node 0: [mem 0x0000000043030000-0x0000000047c7ffff]
[ 0.000000] node 0: [mem 0x0000000047c80000-0x0000000047ffffff]
[ 0.000000] node 0: [mem 0x0000000048000000-0x000000004fffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000004fffffff]
[ 0.000000] psci: probing for conduit method from DT.
[ 0.000000] psci: PSCIv1.1 detected in firmware.
[ 0.000000] psci: Using standard PSCI v0.2 function IDs
[ 0.000000] psci: MIGRATE_INFO_TYPE not supported.
[ 0.000000] psci: SMC Calling Convention v1.2
[ 0.000000] percpu: Embedded 18 pages/cpu s33112 r8192 d32424 u73728
[ 0.000000] pcpu-alloc: s33112 r8192 d32424 u73728 alloc=18*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1
[ 0.000000] Detected VIPT I-cache on CPU0
[ 0.000000] CPU features: detected: GIC system register CPU interface
[ 0.000000] CPU features: kernel page table isolation disabled by kernel configuration
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 64512
[ 0.000000] Kernel command line: console=ttyS0,115200n1 loglevel=8 swiotlb=512 rootfstype=squashfs firmware=0 mtd=ubi uart_en=1
[ 0.000000] Unknown kernel command line parameters "firmware=0 mtd=ubi uart_en=1", will be passed to user space.
[ 0.000000] Dentry cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 16384 (order: 5, 131072 bytes, linear)
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] Memory: 241372K/262144K available (8384K kernel code, 906K rwdata, 1488K rodata, 448K init, 300K bss, 20772K reserved, 0K cma-reserved)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[ 0.000000] rcu: Hierarchical RCU implementation.
[ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[ 0.000000] Tracing variant of Tasks RCU enabled.
[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[ 0.000000] GICv3: GIC: Using split EOI/Deactivate mode
[ 0.000000] GICv3: 640 SPIs implemented
[ 0.000000] GICv3: 0 Extended SPIs implemented
[ 0.000000] GICv3: Distributor has no Range Selector support
[ 0.000000] Root IRQ handler: 0xffffffc008010090
[ 0.000000] GICv3: 16 PPIs implemented
[ 0.000000] GICv3: CPU0: found redistributor 0 region 0:0x000000000c080000
[ 0.000000] arch_timer: cp15 timer(s) running at 13.00MHz (phys).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2ff89eacb, max_idle_ns: 440795202429 ns
[ 0.000000] sched_clock: 56 bits at 13MHz, resolution 76ns, wraps every 4398046511101ns
[ 0.000150] Calibrating delay loop (skipped), value calculated using timer frequency.. 26.00 BogoMIPS (lpj=130000)
[ 0.000160] pid_max: default: 32768 minimum: 301
[ 0.000435] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[ 0.000445] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[ 0.001733] rcu: Hierarchical SRCU implementation.
[ 0.002095] smp: Bringing up secondary CPUs ...
[ 0.002418] Detected VIPT I-cache on CPU1
[ 0.002443] GICv3: CPU1: found redistributor 1 region 0:0x000000000c0a0000
[ 0.002472] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[ 0.002535] smp: Brought up 1 node, 2 CPUs
[ 0.002549] SMP: Total of 2 processors activated.
[ 0.002554] CPU features: detected: 32-bit EL0 Support
[ 0.002558] CPU features: detected: CRC32 instructions
[ 0.002584] CPU features: emulated: Privileged Access Never (PAN) using TTBR0_EL1 switching
[ 0.002645] CPU: All CPU(s) started at EL2
[ 0.002657] alternatives: patching kernel code
[ 0.006095] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.006117] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[ 0.006257] pinctrl core: initialized pinctrl subsystem
[ 0.007095] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[ 0.007450] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[ 0.007478] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[ 0.007502] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[ 0.007842] thermal_sys: Registered thermal governor 'fair_share'
[ 0.007846] thermal_sys: Registered thermal governor 'bang_bang'
[ 0.007851] thermal_sys: Registered thermal governor 'step_wise'
[ 0.007855] thermal_sys: Registered thermal governor 'user_space'
[ 0.008079] ASID allocator initialised with 65536 entries
[ 0.008576] pstore: Registered ramoops as persistent store backend
[ 0.008582] ramoops: using 0x10000@0x42ff0000, ecc: 0
[ 0.018955] cryptd: max_cpu_qlen set to 1000
[ 0.021264] SCSI subsystem initialized
[ 0.021437] libata version 3.00 loaded.
[ 0.022627] clocksource: Switched to clocksource arch_sys_counter
[ 0.023261] NET: Registered PF_INET protocol family
[ 0.023353] IP idents hash table entries: 4096 (order: 3, 32768 bytes, linear)
[ 0.023751] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear)
[ 0.023767] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[ 0.023776] TCP established hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.023794] TCP bind hash table entries: 2048 (order: 3, 32768 bytes, linear)
[ 0.023823] TCP: Hash tables configured (established 2048 bind 2048)
[ 0.023891] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[ 0.023908] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[ 0.024042] NET: Registered PF_UNIX/PF_LOCAL protocol family
[ 0.024064] PCI: CLS 0 bytes, default 64
[ 0.026761] workingset: timestamp_bits=46 max_order=16 bucket_order=0
[ 0.030398] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.030414] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 0.065198] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.065937] pwm-mediatek 10048000.pwm: clock: top fail: -517
[ 0.076281] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[ 0.078575] printk: console [ttyS0] disabled
[ 0.098748] 11002000.serial: ttyS0 at MMIO 0x11002000 (irq = 18, base_baud = 2500000) is a ST16650V2
[ 0.738596] printk: console [ttyS0] enabled
[ 0.743579] cacheinfo: Unable to detect cache hierarchy for CPU 0
[ 0.753339] loop: module loaded
[ 0.756481] Loading iSCSI transport class v2.0-870.
[ 0.763292] spi spi0.0: setup: ignoring unsupported mode bits a00
[ 0.769715] spi-nand spi0.0: ESMT SPI NAND was found.
[ 0.774794] spi-nand spi0.0: 128 MiB, block size: 128 KiB, page size: 2048, OOB size: 64
[ 0.783569] Signature found at block 1023 [0x07fe0000]
[ 0.788699] NMBM management region starts at block 960 [0x07800000]
[ 0.796796] First info table with writecount 0 found in block 960
[ 0.808321] Second info table with writecount 0 found in block 963
[ 0.814504] NMBM has been successfully attached
[ 0.819322] 10 fixed-partitions partitions found on MTD device spi0.0
[ 0.825780] Creating 10 MTD partitions on "spi0.0":
[ 0.830647] 0x000000000000-0x000000100000 : "BL2"
[ 0.836509] 0x000000100000-0x000000140000 : "Nvram"
[ 0.841988] 0x000000140000-0x000000180000 : "Bdata"
[ 0.847519] 0x000000180000-0x000000380000 : "Factory"
[ 0.854800] 0x000000380000-0x000000580000 : "FIP"
[ 0.861344] 0x000000580000-0x0000005c0000 : "crash"
[ 0.866874] 0x0000005c0000-0x000000600000 : "crash_log"
[ 0.872737] 0x000007600000-0x000007640000 : "KF"
[ 0.877954] 0x000000600000-0x000002800000 : "ubi_kernel"
[ 0.907969] 0x000002800000-0x000007600000 : "ubi"
[ 1.109388] mtk_soc_eth 15100000.ethernet eth0: mediatek frame engine at 0xffffffc009600000, irq 83
[ 1.119012] i2c_dev: i2c /dev entries driver
[ 1.125327] mtk-wdt 1001c000.watchdog: Watchdog enabled (timeout=31 sec, nowayout=0)
[ 1.134158] NET: Registered PF_INET6 protocol family
[ 1.139941] Segment Routing with IPv6
[ 1.143781] In-situ OAM (IOAM) with IPv6
[ 1.147736] NET: Registered PF_PACKET protocol family
[ 1.152823] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[ 1.166014] 8021q: 802.1Q VLAN Support v1.8
[ 1.171283] pstore: Using crash dump compression: deflate
[ 1.231302] mt7530-mdio mdio-bus:1f: configuring for fixed/2500base-x link mode
[ 1.240389] mt7530-mdio mdio-bus:1f: Link is Up - 2.5Gbps/Full - flow control rx/tx
[ 1.249352] mt7530-mdio mdio-bus:1f wan (uninitialized): PHY [mt7530-0:00] driver [MediaTek MT7531 PHY] (irq=92)
[ 1.269705] mt7530-mdio mdio-bus:1f lan2 (uninitialized): PHY [mt7530-0:01] driver [MediaTek MT7531 PHY] (irq=93)
[ 1.289909] mt7530-mdio mdio-bus:1f lan3 (uninitialized): PHY [mt7530-0:02] driver [MediaTek MT7531 PHY] (irq=94)
[ 1.310116] mt7530-mdio mdio-bus:1f lan4 (uninitialized): PHY [mt7530-0:03] driver [MediaTek MT7531 PHY] (irq=95)
[ 1.321678] DSA: tree 0 setup
[ 1.325485] UBI error: no valid UBI magic found inside mtd9
[ 1.331301] clk: Disabling unused clocks
[ 1.335953] /dev/root: Can't open blockdev
[ 1.340052] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
[ 1.347544] Please append a correct "root=" boot option; here are the available partitions:
[ 1.355896] 1f00 1024 mtdblock0
[ 1.355901] (driver?)
[ 1.362418] 1f01 256 mtdblock1
[ 1.362422] (driver?)
[ 1.368943] 1f02 256 mtdblock2
[ 1.368947] (driver?)
[ 1.375467] 1f03 2048 mtdblock3
[ 1.375471] (driver?)
[ 1.381985] 1f04 2048 mtdblock4
[ 1.381989] (driver?)
[ 1.388514] 1f05 256 mtdblock5
[ 1.388519] (driver?)
[ 1.395039] 1f06 256 mtdblock6
[ 1.395043] (driver?)
[ 1.401558] 1f07 256 mtdblock7
[ 1.401562] (driver?)
[ 1.408082] 1f08 34816 mtdblock8
[ 1.408086] (driver?)
[ 1.414606] 1f09 79872 mtdblock9
[ 1.414609] (driver?)
[ 1.421124] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 1.429370] SMP: stopping secondary CPUs
[ 1.433282] Kernel Offset: disabled
[ 1.436757] CPU features: 0x0,00000000,20000802
[ 1.441274] Memory Limit: none
[ 1.446583] Rebooting in 1 seconds..

on startup firmware 1 see kernel error like befor , then auto switch to start firmware2 and this log last log

This is dual boot system, better you flash the -initramfs-factory.ubi into mtd8 and mtd9. then whatever you could boot into RAM mode.

1 Like

sorry how to !

this command? 8 and 9

Summary

ubiformat /dev/mtd8 -y -f /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-initramfs-factory.ubi
ubiformat /dev/mtd9 -y -f /tmp/openwrt-mediatek-filogic-xiaomi_mi-router-ax3000t-initramfs-factory.ubi

Yes, that's it

1 Like

do it and noting change
after reboot get this log and after reboot again kernel error and loop

Summary
 4. Upgrade firmware
 5. Upgrade ATF BL2
 6. Upgrade ATF FIP
 7. Upgrade single image
 8. Load image
 0. U-Boot console

Press UP/DOWN to move, ENTER to select, ESC/CTRL+C to quit
detect button reset released!
Reading from 0x0 to 0x4f7fdd7c, size 0x4 ... OK
Reading from 0x0 to 0x4f7fdd7c, size 0x4 ... OK
Saving Environment to MTD... Erasing on MTD device 'nmbm0'... OK
Writing to MTD device 'nmbm0'... OK
OK
[Dual Image] Booting System 1, sys1_failed = 0, sys2_failed = 0
ubi0: attaching mtd10
ubi0: scanning is finished
ubi0 error: vtbl_check: too large reserved_pebs 564, good PEBs 272
ubi0 error: vtbl_check: volume table check failed: record 1, error 9
Volume table record 1 dump:
reserved_pebs 564
alignment 1
data_pad 0
vol_type 1
upd_marker 0
name_len 11
name rootfs_data
crc 0xaf0c46c7
ubi0 error: ubi_attach_mtd_dev: failed to attach mtd10, error -22
UBI error: cannot attach mtd10
UBI error: cannot initialize UBI, error -22
*** Failed to attach UBI ***
*** Rebuilding UBI ***
Erasing from 0x0 to 0x21fffff, size 0x2200000 ... OK
*** UBI is read-only mode ***
resetting ...

You already in luci, try to install kmod-mtd-rw.

Do you know how to switch the dual-boot between mtd9 and mtd8?
Maybe you try on it.

1 Like

on uboot menu have 2 firmware but no one not boot
i think this error is my problem after second run after sysupgrade
ubi0 error: ubi_attach_mtd_dev: failed to attach mtd10, error -22
after that ubi file error and loooooop

 2. Startup firmware0 ----------------->>> attach mtd9
 3. Startup firmware1------------------>>>Attack mtd10

is correct mtd? i think os on mtd8