(to moderator: please update this post, because previous has errors in [color])
hello, world.
... few days ago i send wrong image to diags_kernel partition, it bricks my reader.
Image on screen freezed with "Reboot and enter fastboot mode." message, reader stucked in bootloader, with attempt to boot diags, but has no diags partition:
Now, here is my "uboot unbrick from no-diags method", commands is
bold:
- solder serial (make good, better if all-soldered connections), establish u-boot connection (i use linux and minicom terminal, with file transfer abilities).
- start kindle, wait for uboot terminal connection, when boot process crash with:
<...>
BOOTing diags from mmc ...
mmc1(part 0) is current device
MMC read: dev # 1, block # 29392, count 28672 ... 28672 blocks read in 319 msec: OK
MMC read: dev # 1, block # 29192, count 256 ... 256 blocks read in 6 msec: OK
Wrong Image Format for bootm command
ERROR: can't get kernel image!
<...>
- here, in uboot prompt, you can use help command, try bist and then fastboot, if it doesnt work - go next steps, and if you are lucky, and fastboot possible - go to step #16
- uboot > printenv
output will be similar like this (we need only values from red strings):
- next, send file to memory with loady command:
uboot > loady
- press ctrl-a, then release keys and press 'S', choose and send diagkern.bin from your backup (i used minicom terminal, you can send image to loadpoint by different methods), choose ymodem protocol, wait for loading, press any key.
- uboot > md 0x80800000
(it shows you first part of your image in memory (now you can compare it with diagkern.bin file)
- remember or write address, where file loaded:
<...>
Ready for binary (ymodem) download to 0x80800000 at 115200 bps...
<...>
- look at loadpoint in emmc with md 0x83000000 command, you can see some code, from wrong, previous flashed flashed "diags_kernel" partition.
- uboot > protect off all
(very important step, because next step - write blocks to EMMC)
- uboot > mmc read 0x80800000 0x208 0x24B8
uboot output:
<...>
uboot > mmc read 0x80800000 0x208 0x24B8
MMC read: dev # 1, block # 520, count 9400 ... 9400 blocks read in 107 msec: OK
<...>
- uboot > mmc write 0x83000000 0x208 0x24B8
uboot output:
<...>
uboot > mmc write 0x83000000 0x208 0x24B8
MMC write: dev # 1, block # 520, count 9400 ... 9400 blocks write in 272 msec: OK
<...>
- uboot > bootm 0x83000000
- uboot > bist
- uboot > fastboot
- to flash diags kernel over fastboot - take file diagkern.bin, from working 5.9.4 backup, open new terminal window, and send fastboot command:
> fastboot flash diags_kernel diagkern.bin
in linux you must use sudo before fastboot. also, here you can flash other backup files.
- uboot > bootm 0x83000000
- reset, for reboot kindle.
- to let system boot in main mode - open new terminal window, and send fastboot command:
> fastboot set bootmode main
- Job Well Done! (c)Darkwing Duck
2018, Dr.01d