|
我知道原因了,是坏块表的状态值0/1写反了,因此本来是好的块全部被认为是坏块了,因此导致什么都写不进去。
解决方法是先暂时刷回旧版,需要在 Breed shell 里面进行操作(串口/Telnet)
1. 关掉坏块表的保护机制和回写功能:
breed> nand bbt protect off
BBT protection is now disabled
breed> nand bbt writeback off
BBT writeback is now disabled
2. 载入旧版 breed 数据 (https://breed.hackpascal.net/r1286%20]https://breed.hackpascal.net/r1286%20[2020-10-09]/)
breed> wget 0x80001000 http://<Breed 文件的 URL>
Connecting to 192.168.1.3:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 127962/0x1f3da (124KB) [application/octet-stream]
Saving to address 0x80001000
[========================================================================] 100%
Transmission completed in 0.6s.
记住文件大小,如 0x1f3da
3. 强制擦除 Bootloader 分区
breed> nand erase force 0 0x40000
Erasing flash bank 0 from 0x0, size 0x40000
[========================================================================] 100%
4. 写入 Breed
breed> nand write 0x80001000 0 0x1f3da
Writing flash bank 0 to 0x0 from memory 0x80001000, size 0x1f3da
[========================================================================] 100%
|
|