
it's still a risky operation since you won't know if something went wrong until you go to reboot and find it won't boot.
Well, I like experimenting, so I hope to have fixed my own RT3200 (running main/master snapshot) from the live SSH console by writing the new bl2 to mtd0.
Router booted just fine after that. Lucky me.
I used a self-built bl2, built along my normal firmware image into which I also added the kmod-mtd-rw package, (as the buildbot has not yet compiled a new version after the fix).
Commands used:
-----------------------------------------------------
OpenWrt SNAPSHOT, r27123-8cf9a932fa
-----------------------------------------------------
root@router4:/tmp# insmod mtd-rw.ko i_want_a_brick=1
root@router4:/tmp#
root@router4:/tmp# mtd -p 0x0 write /tmp/E8450-main-r27123-8cf9a932fa-20240812-2053-ubi-preloader.bin /dev/mtd0
Unlocking /dev/mtd0 ...
Writing from /tmp/E8450-main-r27123-8cf9a932fa-20240812-2053-ubi-preloader.bin to /dev/mtd0 ...
root@router4:/tmp# mtd -p 0x20000 write /tmp/E8450-main-r27123-8cf9a932fa-20240812-2053-ubi-preloader.bin /dev/mtd0
Unlocking /dev/mtd0 ...
Seeking on mtd device '/dev/mtd0' to: 131072
Writing from /tmp/E8450-main-r27123-8cf9a932fa-20240812-2053-ubi-preloader.bin to /dev/mtd0 ...
root@router4:/tmp# mtd -p 0x40000 write /tmp/E8450-main-r27123-8cf9a932fa-20240812-2053-ubi-preloader.bin /dev/mtd0
Unlocking /dev/mtd0 ...
Seeking on mtd device '/dev/mtd0' to: 262144
Writing from /tmp/E8450-main-r27123-8cf9a932fa-20240812-2053-ubi-preloader.bin to /dev/mtd0 ...
root@router4:/tmp# mtd -p 0x60000 write /tmp/E8450-main-r27123-8cf9a932fa-20240812-2053-ubi-preloader.bin /dev/mtd0
Unlocking /dev/mtd0 ...
Seeking on mtd device '/dev/mtd0' to: 393216
Writing from /tmp/E8450-main-r27123-8cf9a932fa-20240812-2053-ubi-preloader.bin to /dev/mtd0 ...
root@router4:/tmp#
root@router4:/tmp# sync
root@router4:~# grep "(release)" /dev/mtd0ro
v2.10.0 (release):OpenWrt v2024.01.17~bacca82a-3 (mt7622-snand-ubi-1ddr)
v2.10.0 (release):OpenWrt v2024.01.17~bacca82a-3 (mt7622-snand-ubi-1ddr)
v2.10.0 (release):OpenWrt v2024.01.17~bacca82a-3 (mt7622-snand-ubi-1ddr)
v2.10.0 (release):OpenWrt v2024.01.17~bacca82a-3 (mt7622-snand-ubi-1ddr)
root@router4:/tmp# hexdump -C /dev/mtd0 | grep -C 3 Built
00012590 65 6e 57 72 74 20 76 32 30 32 34 2e 30 31 2e 31 |enWrt v2024.01.1|
000125a0 37 7e 62 61 63 63 61 38 32 61 2d 33 20 28 6d 74 |7~bacca82a-3 (mt|
000125b0 37 36 32 32 2d 73 6e 61 6e 64 2d 75 62 69 2d 31 |7622-snand-ubi-1|
000125c0 64 64 72 29 00 42 75 69 6c 74 20 3a 20 31 37 3a |ddr).Built : 17:|
000125d0 32 31 3a 33 34 2c 20 41 75 67 20 31 32 20 32 30 |21:34, Aug 12 20|
000125e0 32 34 00 0a 42 4c 32 3a 20 46 61 69 6c 75 72 65 |24..BL2: Failure|
000125f0 20 69 6e 20 70 72 65 20 69 6d 61 67 65 20 6c 6f | in pre image lo|
--
00032590 65 6e 57 72 74 20 76 32 30 32 34 2e 30 31 2e 31 |enWrt v2024.01.1|
000325a0 37 7e 62 61 63 63 61 38 32 61 2d 33 20 28 6d 74 |7~bacca82a-3 (mt|
000325b0 37 36 32 32 2d 73 6e 61 6e 64 2d 75 62 69 2d 31 |7622-snand-ubi-1|
000325c0 64 64 72 29 00 42 75 69 6c 74 20 3a 20 31 37 3a |ddr).Built : 17:|
000325d0 32 31 3a 33 34 2c 20 41 75 67 20 31 32 20 32 30 |21:34, Aug 12 20|
000325e0 32 34 00 0a 42 4c 32 3a 20 46 61 69 6c 75 72 65 |24..BL2: Failure|
000325f0 20 69 6e 20 70 72 65 20 69 6d 61 67 65 20 6c 6f | in pre image lo|
--
00052590 65 6e 57 72 74 20 76 32 30 32 34 2e 30 31 2e 31 |enWrt v2024.01.1|
000525a0 37 7e 62 61 63 63 61 38 32 61 2d 33 20 28 6d 74 |7~bacca82a-3 (mt|
000525b0 37 36 32 32 2d 73 6e 61 6e 64 2d 75 62 69 2d 31 |7622-snand-ubi-1|
000525c0 64 64 72 29 00 42 75 69 6c 74 20 3a 20 31 37 3a |ddr).Built : 17:|
000525d0 32 31 3a 33 34 2c 20 41 75 67 20 31 32 20 32 30 |21:34, Aug 12 20|
000525e0 32 34 00 0a 42 4c 32 3a 20 46 61 69 6c 75 72 65 |24..BL2: Failure|
000525f0 20 69 6e 20 70 72 65 20 69 6d 61 67 65 20 6c 6f | in pre image lo|
--
00072590 65 6e 57 72 74 20 76 32 30 32 34 2e 30 31 2e 31 |enWrt v2024.01.1|
000725a0 37 7e 62 61 63 63 61 38 32 61 2d 33 20 28 6d 74 |7~bacca82a-3 (mt|
000725b0 37 36 32 32 2d 73 6e 61 6e 64 2d 75 62 69 2d 31 |7622-snand-ubi-1|
000725c0 64 64 72 29 00 42 75 69 6c 74 20 3a 20 31 37 3a |ddr).Built : 17:|
000725d0 32 31 3a 33 34 2c 20 41 75 67 20 31 32 20 32 30 |21:34, Aug 12 20|
000725e0 32 34 00 0a 42 4c 32 3a 20 46 61 69 6c 75 72 65 |24..BL2: Failure|
000725f0 20 69 6e 20 70 72 65 20 69 6d 61 67 65 20 6c 6f | in pre image lo|