View Single Post
Old 01-30-2012, 10:52 PM   #150
yifanlu
Kindle Dissector
yifanlu can program the VCR without an owner's manual.yifanlu can program the VCR without an owner's manual.yifanlu can program the VCR without an owner's manual.yifanlu can program the VCR without an owner's manual.yifanlu can program the VCR without an owner's manual.yifanlu can program the VCR without an owner's manual.yifanlu can program the VCR without an owner's manual.yifanlu can program the VCR without an owner's manual.yifanlu can program the VCR without an owner's manual.yifanlu can program the VCR without an owner's manual.yifanlu can program the VCR without an owner's manual.
 
Posts: 662
Karma: 170717
Join Date: Jul 2010
Device: Amazon Kindle 3
Quote:
Originally Posted by geekmaster View Post
I have a modified a copy of the u-boot boot loader, and I have it loaded and running (in RAM) on my bricked k4nt, thanks to yinfalu. So far, I patched only the boot message identifying the u-boot version (replacing "Yifan Lu patch" with "geekmaster mod") and the boot message from the serial port changed accordingly, proving that we are running "custom" boot loader code.

It even gets farther into the boot process, saying that it tested RAM successfully (which does not happen "normally" on this bricked kindle).

Now I have to modify the boot loader to force the board ID so it can initialize it and continue booting.

Once I get farther along in the boot process, I should be able to use idme to rewrite the board ID and serial number (I hope).

Anyway, do not discard your "hopelessly" bricked devices. This recover method is making rapid progress (thanks to the hard work of Yifan Lu). This is a k4nt, but it should work on the Touch as well. Thanks!

Here is the output captured from the serial port when I upload the patched u-boot using the Freescale MfgTool:

Normal (ROM) boot:
Spoiler:
Code:
U-Boot 2009.08-lab126 (Sep 02 2011 - 22:45:17)

CPU:   Freescale i.MX50 family 1.1V at 800 MHz
mx50 pll1: 800MHz
mx50 pll2: 400MHz
mx50 pll3: 216MHz
ipg clock     : 50000000Hz
ipg per clock : 50000000Hz
uart clock    : 24000000Hz
ahb clock     : 100000000Hz
axi_a clock   : 400000000Hz
axi_b clock   : 200000000Hz
weim_clock    : 100000000Hz
ddr clock     : 800000000Hz
esdhc1 clock  : 80000000Hz
esdhc2 clock  : 80000000Hz
esdhc3 clock  : 80000000Hz
esdhc4 clock  : 80000000Hz
MMC:  FSL_ESDHC: 0, FSL_ESDHC: 1
Board: Unknown
Boot Reason: [POR]
Boot Device: MMC
Board Id: 1
S/N: 1
Invalid board id!  Can't determine system type for RAM init.. bailing!
DRAM:   0 kB
Using default environment

yinfalu's patch:
Spoiler:
Code:
U-Boot Yifan Lu patch (Sep 02 2011 - 22:45:17)

CPU:   Freescale i.MX50 family 1.1V at 800 MHz
mx50 pll1: 800MHz
mx50 pll2: 400MHz
mx50 pll3: 216MHz
ipg clock     : 50000000Hz
ipg per clock : 50000000Hz
uart clock    : 24000000Hz
ahb clock     : 100000000Hz
axi_a clock   : 400000000Hz
axi_b clock   : 200000000Hz
weim_clock    : 100000000Hz
ddr clock     : 266666666Hz
esdhc1 clock  : 80000000Hz
esdhc2 clock  : 80000000Hz
esdhc3 clock  : 80000000Hz
esdhc4 clock  : 80000000Hz
MMC:  FSL_ESDHC: 0, FSL_ESDHC: 1
Board: Unknown
Boot Reason: [POR]
Boot Device: MMC
Board Id: 1
S/N: 1
Invalid board id!  Can't determine system type for RAM init.. bailing!
DRAM:   0 kB
Using default environment

In:    serial
Out:   logbuff
Err:   logbuff
Quick Memory Test 0x70000000, 0x0
POST done in 4 ms

geekmaster's patch:
Spoiler:
Code:
U-Boot Geekmaster mod (Sep 02 2011 - 22:45:17)

CPU:   Freescale i.MX50 family 1.1V at 800 MHz
mx50 pll1: 800MHz
mx50 pll2: 400MHz
mx50 pll3: 216MHz
ipg clock     : 50000000Hz
ipg per clock : 50000000Hz
uart clock    : 24000000Hz
ahb clock     : 100000000Hz
axi_a clock   : 400000000Hz
axi_b clock   : 200000000Hz
weim_clock    : 100000000Hz
ddr clock     : 266666666Hz
esdhc1 clock  : 80000000Hz
esdhc2 clock  : 80000000Hz
esdhc3 clock  : 80000000Hz
esdhc4 clock  : 80000000Hz
MMC:  FSL_ESDHC: 0, FSL_ESDHC: 1
Board: Unknown
Boot Reason: [POR]
Boot Device: MMC
Board Id: 1
S/N: 1
Invalid board id!  Can't determine system type for RAM init.. bailing!
DRAM:   0 kB
Using default environment

In:    serial
Out:   logbuff
Err:   logbuff
Quick Memory Test 0x70000000, 0x0
POST done in 4 ms
Umm, that "patch" is literally hex editing the version string. I never announce something until I am certain of the project. If someone are into the development process, they can join the IRC. It's never good to give false hope if this doesn't go anywhere. I mean I want to help you unbrick your Kindle because I'm interested in seeing how it would work, but it's not a certainty. If this process works out, I'll write a very in-depth post detailing everything from the commands to the data structures to the memory layout of the device, but now we have people expecting something which puts pressure on me.
yifanlu is offline   Reply With Quote