Hi All,
I tried updating through LUCI and it went into long orange flashes. I tried both TFTP and the instructions here.
When looking at serial output in long orange I get:
Reading from 0x0 to 0x4f7fdd7c, size 0x4 ... OK
Boot failure detected on both systems
Reading from 0x0 to 0x4f7fdd7c, size 0x4 ... OK
Saving Environment to MTD... Erasing on MTD device 'nmbm0'... OK
OK
OK
Booting System 0, sys1_failed = 351, sys2_failed = 8
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: 4/2, WL threshold: 4096, image sequence number: 1325627864
ubi0: available PEBs: 214, total reserved PEBs: 58, 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-6.6.57
Type: Kernel Image
Compression: lzma compressed
Data Start: 0x460000e8
Data Size: 4330355 Bytes = 4.1 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x48000000
Entry Point: 0x48000000
Hash algo: crc32
Hash value: b322ab9c
Hash algo: sha1
Hash value: 859eddb6e3de999e69bd3e5cd48fe2fdb34d12bd
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: 0x464215a4
Data Size: 23177 Bytes = 22.6 KiB
Architecture: AArch64
Hash algo: crc32
Hash value: 8aa95659
Hash algo: sha1
Hash value: 56ea137f3010294f81f717095dec59dd1453935a
Verifying Hash Integrity ... crc32+ sha1+ OK
Booting using the fdt blob at 0x464215a4
Uncompressing Kernel Image
Loading Device Tree to 000000004f7f0000, end 000000004f7f8a88 ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 6.6.57 (builder@buildhost) (aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 13.3.0 r27833-fcd935a5e4) 13.3.0, GNU ld (GNU Binutils) 2.42) #0 SMP Sun Oct 20 11:52:45 2024
[ 0.000000] Machine model: Xiaomi Mi Router AX3000T
[ 0.000000] OF: reserved mem: 0x0000000042ff0000..0x0000000042ffffff (64 KiB) map non-reusable ramoops@42ff0000
[ 0.000000] OF: reserved mem: 0x0000000043000000..0x000000004302ffff (192 KiB) nomap non-reusable secmon@43000000
[ 0.000000] OF: reserved mem: 0x0000000047c80000..0x0000000047d7ffff (1024 KiB) nomap non-reusable wmcpu-reserved@47c80000
[ 0.000000] OF: reserved mem: 0x0000000047d80000..0x0000000047dbffff (256 KiB) nomap non-reusable wo-emi@47d80000
[ 0.000000] OF: reserved mem: 0x0000000047dc0000..0x0000000047ffffff (2304 KiB) nomap non-reusable wo-data@47dc0000
[ 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 s35112 r8192 d30424 u73728
[ 0.000000] pcpu-alloc: s35112 r8192 d30424 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] alternatives: applying boot alternatives
[ 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] Built 1 zonelists, mobility grouping on. Total pages: 64512
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] software IO TLB: area num 2.
[ 0.000000] software IO TLB: mapped [mem 0x000000004f900000-0x000000004fa00000] (1MB)
[ 0.000000] Memory: 238660K/262144K available (8896K kernel code, 904K rwdata, 2592K rodata, 448K init, 304K bss, 23484K 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] Root IRQ handler: gic_handle_irq
[ 0.000000] GICv3: GICv3 features: 16 PPIs
[ 0.000000] GICv3: CPU0: found redistributor 0 region 0:0x000000000c080000
[ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[ 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.000075] Calibrating delay loop (skipped), value calculated using timer frequency.. 26.00 BogoMIPS (lpj=130000)
[ 0.000084] pid_max: default: 32768 minimum: 301
[ 0.003097] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[ 0.003105] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[ 0.005334] cacheinfo: Unable to detect cache hierarchy for CPU 0
[ 0.005877] RCU Tasks Trace: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1.
[ 0.006020] rcu: Hierarchical SRCU implementation.
[ 0.006024] rcu: Max phase no-delay instances is 1000.
[ 0.006433] smp: Bringing up secondary CPUs ...
[ 0.006801] Detected VIPT I-cache on CPU1
[ 0.006845] GICv3: CPU1: found redistributor 1 region 0:0x000000000c0a0000
[ 0.006875] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[ 0.006945] smp: Brought up 1 node, 2 CPUs
[ 0.006951] SMP: Total of 2 processors activated.
[ 0.006954] CPU features: detected: 32-bit EL0 Support
[ 0.006957] CPU features: detected: CRC32 instructions
[ 0.006990] CPU features: emulated: Privileged Access Never (PAN) using TTBR0_EL1 switching
[ 0.006993] CPU: All CPU(s) started at EL2
[ 0.006994] alternatives: applying system-wide alternatives
[ 0.010761] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.010778] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[ 0.012028] pinctrl core: initialized pinctrl subsystem
[ 0.013132] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[ 0.013741] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[ 0.013769] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[ 0.013789] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[ 0.014161] thermal_sys: Registered thermal governor 'fair_share'
[ 0.014165] thermal_sys: Registered thermal governor 'bang_bang'
[ 0.014168] thermal_sys: Registered thermal governor 'step_wise'
[ 0.014170] thermal_sys: Registered thermal governor 'user_space'
[ 0.014276] ASID allocator initialised with 65536 entries
[ 0.015313] pstore: Using crash dump compression: deflate
[ 0.015318] pstore: Registered ramoops as persistent store backend
[ 0.015320] ramoops: using 0x10000@0x42ff0000, ecc: 0
[ 0.022342] Modules: 29440 pages in range for non-PLT usage
[ 0.022350] Modules: 520960 pages in range for PLT usage
[ 0.023193] cryptd: max_cpu_qlen set to 1000
[ 0.024329] SCSI subsystem initialized
[ 0.024532] libata version 3.00 loaded.
[ 0.026101] clocksource: Switched to clocksource arch_sys_counter
[ 0.028383] NET: Registered PF_INET protocol family
[ 0.028489] IP idents hash table entries: 4096 (order: 3, 32768 bytes, linear)
[ 0.029742] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear)
[ 0.029756] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[ 0.029765] TCP established hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.029783] TCP bind hash table entries: 2048 (order: 4, 65536 bytes, linear)
[ 0.029837] TCP: Hash tables configured (established 2048 bind 2048)
[ 0.029912] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[ 0.029937] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[ 0.030290] NET: Registered PF_UNIX/PF_LOCAL protocol family
[ 0.030318] PCI: CLS 0 bytes, default 64
[ 0.031643] workingset: timestamp_bits=46 max_order=16 bucket_order=0
[ 0.036525] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.036534] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 0.069499] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.080106] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[ 0.083785] printk: console [ttyS0] disabled
[ 0.104185] 11002000.serial: ttyS0 at MMIO 0x11002000 (irq = 72, base_baud = 2500000) is a ST16650V2
[ 0.104227] printk: console [ttyS0] enabled
[ 0.853395] loop: module loaded
[ 0.858692] spi-nand spi0.0: ESMT SPI NAND was found.
[ 0.863746] spi-nand spi0.0: 128 MiB, block size: 128 KiB, page size: 2048, OOB size: 64
[ 0.872317] Signature found at block 1023 [0x07fe0000]
[ 0.877485] NMBM management region starts at block 960 [0x07800000]
[ 0.884689] First info table with writecount 0 found in block 960
[ 0.893651] Second info table with writecount 0 found in block 963
[ 0.899853] NMBM has been successfully attached
[ 0.904700] 10 fixed-partitions partitions found on MTD device spi0.0
[ 0.911176] Creating 10 MTD partitions on "spi0.0":
[ 0.916044] 0x000000000000-0x000000100000 : "BL2"
[ 0.921715] 0x000000100000-0x000000140000 : "Nvram"
[ 0.927270] 0x000000140000-0x000000180000 : "Bdata"
[ 0.932733] 0x000000180000-0x000000380000 : "Factory"
[ 0.939588] 0x000000380000-0x000000580000 : "FIP"
[ 0.945764] 0x000000580000-0x0000005c0000 : "crash"
[ 0.951253] 0x0000005c0000-0x000000600000 : "crash_log"
[ 0.957107] 0x000007600000-0x000007640000 : "KF"
[ 0.962329] 0x000000600000-0x000002800000 : "ubi_kernel"
[ 0.984568] 0x000002800000-0x000007600000 : "ubi"
[ 1.173500] mtk_soc_eth 15100000.ethernet eth0: mediatek frame engine at 0xffffffc081700000, irq 75
[ 1.183257] i2c_dev: i2c /dev entries driver
[ 1.190150] mtk-wdt 1001c000.watchdog: Watchdog enabled (timeout=31 sec, nowayout=0)
[ 1.199269] NET: Registered PF_INET6 protocol family
[ 1.205128] Segment Routing with IPv6
[ 1.208870] In-situ OAM (IOAM) with IPv6
[ 1.212830] NET: Registered PF_PACKET protocol family
[ 1.217952] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[ 1.231194] 8021q: 802.1Q VLAN Support v1.8
[ 1.329583] mt7530-mdio mdio-bus:1f: configuring for fixed/2500base-x link mode
[ 1.338328] mt7530-mdio mdio-bus:1f: Link is Up - 2.5Gbps/Full - flow control rx/tx
[ 1.349324] mt7530-mdio mdio-bus:1f wan (uninitialized): PHY [mt7530-0:00] driver [MediaTek MT7531 PHY] (irq=80)
[ 1.371556] mt7530-mdio mdio-bus:1f lan2 (uninitialized): PHY [mt7530-0:01] driver [MediaTek MT7531 PHY] (irq=81)
[ 1.393624] mt7530-mdio mdio-bus:1f lan3 (uninitialized): PHY [mt7530-0:02] driver [MediaTek MT7531 PHY] (irq=82)
[ 1.415646] mt7530-mdio mdio-bus:1f lan4 (uninitialized): PHY [mt7530-0:03] driver [MediaTek MT7531 PHY] (irq=83)
[ 1.427260] mtk_soc_eth 15100000.ethernet eth0: entered promiscuous mode
[ 1.434004] DSA: tree 0 setup
[ 1.437624] UBI: auto-attach mtd9
[ 1.440948] ubi0: default fastmap pool size: 30
[ 1.445466] ubi0: default fastmap WL pool size: 15
[ 1.450283] ubi0: attaching mtd9
[ 1.482574] UBI: EOF marker found, PEBs from 70 will be erased
[ 1.488724] ubi0: scanning is finished
[ 1.498104] ubi0: attached mtd9 (name "ubi", size 78 MiB)
[ 1.503507] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[ 1.510396] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[ 1.517193] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[ 1.524140] ubi0: good PEBs: 624, bad PEBs: 0, corrupted PEBs: 0
[ 1.530137] ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128
[ 1.537349] ubi0: max/mean erase counter: 2/1, WL threshold: 4096, image sequence number: 305394912
[ 1.546388] ubi0: available PEBs: 531, total reserved PEBs: 93, PEBs reserved for bad PEB handling: 19
[ 1.555685] ubi0: background thread "ubi_bgt0d" started, PID 618
[ 1.555782] clk: Disabling unused clocks
[ 1.566446] /dev/root: Can't open blockdev
[ 1.570559] VFS: Cannot open root device "" or unknown-block(0,0): error -6
[ 1.577542] Please append a correct "root=" boot option; here are the available partitions:
[ 1.585889] 1f00 1024 mtdblock0
[ 1.585895] (driver?)
[ 1.592418] 1f01 256 mtdblock1
[ 1.592422] (driver?)
[ 1.598942] 1f02 256 mtdblock2
[ 1.598947] (driver?)
[ 1.605461] 1f03 2048 mtdblock3
[ 1.605465] (driver?)
[ 1.611986] 1f04 2048 mtdblock4
[ 1.611990] (driver?)
[ 1.618508] 1f05 256 mtdblock5
[ 1.618513] (driver?)
[ 1.625027] 1f06 256 mtdblock6
[ 1.625031] (driver?)
[ 1.631555] 1f07 256 mtdblock7
[ 1.631559] (driver?)
[ 1.638079] 1f08 34816 mtdblock8
[ 1.638083] (driver?)
[ 1.644598] 1f09 79872 mtdblock9
[ 1.644602] (driver?)
[ 1.651125] List of all bdev filesystems:
[ 1.655121] ext3
[ 1.655123] ext2
[ 1.657040] ext4
[ 1.658955] squashfs
[ 1.660867] f2fs
[ 1.663128]
[ 1.666524] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 1.674771] SMP: stopping secondary CPUs
[ 1.678683] Kernel Offset: disabled
[ 1.682157] CPU features: 0x0,00000000,00000000,1000400b
[ 1.687455] Memory Limit: none
[ 1.692860] pstore: backend (ramoops) writing error (-28)
[ 1.698249] Rebooting in 1 seconds..
If I hold reset it will do solid orange followed by flashes and output:
BOOTP broadcast 14
BOOTP broadcast 15
BOOTP broadcast 16
BOOTP broadcast 17
Retry time exceeded; starting again
======== dhcp failed, retry !========
confirm to launch xq_upgrade !
cmd=dhcp
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
BOOTP broadcast 4
BOOTP broadcast 5
BOOTP broadcast 6
BOOTP broadcast 7
BOOTP broadcast 8
BOOTP broadcast 9
BOOTP broadcast 10
BOOTP broadcast 11
In both modes if I tray to use the mtk_uartboot I get:
sudo ./mtk_uartboot -s /dev/serial0 --aarch64 -p bl2-mt7981-bga-ddr3-ram.bin -f openwrt-23.05.5-mediatek-filogic-xiaomi_mi-router-ax3000t-ubootmod-bl31-uboot.fip
mtk_uartboot - 0.1.1
Using serial port: /dev/serial0
Handshake...
thread 'main' panicked at src/bootrom.rs:28:18:
failed to write to port.: Custom { kind: BrokenPipe, error: "Broken pipe" }
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Any ideas?