All of it certainly isn't a big discovery, as flash_header.S is freely available for researching in board directory in U-Boot sources. I've just lost control because of failed downloading of "big" U-Boot into OCRAM (does MfgTools really allow it?) and posted junk

U-Boot (for Kindle Touch) that includes fastboot "server", automatically goes straight into fastboot mode on booting and could be loaded with imx_usb_loader. Use Yifan Lu's fastboot client for sending fastboot commands.

This U-Boot is intentionally and rudely crippled in an effort to make room for fastboot code. Only following fastboot commands are expected to work: getvar, setvar, download, flash and reboot. Other fastboot commands may not work or return completely wrong result without any warnings or fail in funky way. Serial access to U-Boot console should not work at all.

Beginning of old (original) content:

Spoiler:

With the help of hammer, chisel and pile of damns I've managed to make ordinary U-Boot that includes fastboot "server", automatically goes straight into fastboot mode on booting and could be loaded with imx_usb_loader. I've used Yifan Lu's fastboot client to get idme var and it worked. But I have no desire to overwrite my partitions now (to test flash command) Note, that check command will not return real result (as crc32 checking function was removed to decrease file size).

Of course, I can't say for sure, whether it really does not require bist U-Boot, as I has no serial console access and can't check the log. So sorry for disappointment if it will not work as described. Report me and I will delete attachment.

(Patch to original U-Boot source will be provided soon, if it really will work; just let me day or two to tidy up that mess of impulsive editsUPD: done.)

With the help of hammer, chisel and pile of damns I've managed to make oridinary U-Boot that includes fastboot "server", automatically goes straight into fastboot mode on booting and could be loaded with imx_usb_loader. I've used Yifan Lu's fastboot client to get idme var and it worked. And I have no desire to overwrite my partitions now Note, that check command will not return real result (as crc32 checking function was removed to decrease file size).

Of course, I can't say for sure, whether it really does not require bist U-Boot, as I has no serial console access and can't check the log. So sorry for disappointment if it will not work as described. Report me and I will delete attachment.

(Patch to original U-Boot source will be provided soon, if it really will work; just let me day or two to tidy up that mess of impulsive edits.)

That is effing awesome! I was dreaming about doing that "someday". It must have taken significant effort to add in the fastboot part of bist and then "condense" it down to just the essential parts to boot fastboot.

Thanks. This will certainly help those who erased their u-boot bist from mmc. I can't wait to test this out (but not now).

Be sure to put it in the Tools and K5 indexes...

Again, Thanks! Max karma to you for this post (when it will let me give you some again).

EDIT: I announced your tool in the simple debricking first post. I hope you do not mind hot pink.

EDIT2: I plan to replace the fastboot.bin in the MfgTool package in the Select Boot thread with this fastboot.bin, after I test it and make sure that it works correctly on both K4 and K5. Meanwhile, those who need it can do that themselves. But I prefer using the imx_usb_loader tool these days instead of MfgTool, so I can use only linux on my host PC.

With the help of hammer, chisel and pile of damns I've managed to make oridinary U-Boot that includes fastboot "server", automatically goes straight into fastboot mode on booting and could be loaded with imx_usb_loader. I've used Yifan Lu's fastboot client to get idme var and it worked. And I have no desire to overwrite my partitions now Note, that check command will not return real result (as crc32 checking function was removed to decrease file size).

Of course, I can't say for sure, whether it really does not require bist U-Boot, as I has no serial console access and can't check the log. So sorry for disappointment if it will not work as described. Report me and I will delete attachment.

(Patch to original U-Boot source will be provided soon, if it really will work; just let me day or two to tidy up that mess of impulsive edits.)

GREAT!

I was trying to do that as well, but miserably failed - good to see that you succeeded and got it to work... really interested in that diff.

I replaced fastboot.bin in my local copy of the Select Boot package with eureka's new fastboot.bin. MfgTool was able to start fastboot mode. The linux fastboot tool was able to do "sudo ./fastboot getvar serial" and it showed my kindle serial number.

I was not able (yet) to determine whether it was running fastboot protocol from eureka's u-boot, or if it loaded fastboot from the mmc (the old way). I suppose that I actually need to sacrifice a K5 (and a K4) by erasing mmc to properly test whether this new u-boot is up to the challenge of recovering a kindle in such a sorry state of affairs.

Also, we need to test other functions in the new fastboot.bin, to make sure that it flashes the correct locations and lengths in the mmc.

EDIT: Even with a few spare K4 and K5 demo kindles, I am (more than) hesitant to erase the mmc in them.

At various offsets and lengths, it contains uboot and uboot-bist, and the main and diags kernels.

I suppose you could just flash the whole thing starting at offset zero (with dd), but it could potentially zero your idme vars, so be sure to rewrite them with idme before rebooting...

Or better, figure out the length and offset to the uboot-bist portion and just flash that. Be sure to read ixtab's README for flashing diags+ssh (including diags kernel) using dd instead of fastboot. Adapt for uboot offset and length instead of the kernel shown in his example...

This is my last mail received from you. I had my message box full.

I don't think i can flash through ssh becouse it's not installed. I have posted more details on Simple debricking method for K5-Touch, K4-Mini, & K3-Keyboard thread.

There is now a u-boot (non-bist) that can be loaded with MfgTool or the new command-line usb downloader tool, which has fastboot built-in. Awesome! You can thank eureka for that.

Yes i have already tryed and it works to fastboot (i will post later to thanks eureka) i have flashed both kernels and partition main and diags. Now i am able to enter diags and linux promt, but the main still have some errors. When i boott to main i receive :

Did you flash main from diags ssh with dd? If you used fastboot, it did not write the complete main partition... fastboot has a size limit and quits early while falsely reporting "success"... Use dd instead.

I was not able (yet) to determine whether it was running fastboot protocol from eureka's u-boot, or from if it loaded fastboot from the mmc (the old way). I suppose that I actually need to sacrifice a K5 (and a K4) by erasing mmc to properly test whether this new u-boot is up to the challenge of recovering a kindle in such a sorry state of affairs.

If you have KT with access to serial console then comparison of logs of loading process of "my" fastboot.bin and "your" fastboot.bin can also throw some light on this question.

Did you flash main from diags ssh with dd? If you used fastboot, it did not write the complete main partition... fastboot has a size limit and quits early while falsely reporting "success"... Use dd instead.

Yes, i used the fastboot to flash it (forgot that it has a limit) now i just need to search how i do the flash with ssh (never used ssh)

Please continue this in the simple debricking thread. I am copying these posts there. This discussion can help others, and others can help here too.

NOTE: It appears that eureka's standalone fastboot actually did work, and adi23 is close to debricking his "erased mmc" K5 (after he flashes main with dd instead of fastboot).