
In message OFC0BE6659.AF54EF2D-ON85256FB6.006C6C07-85256FB6.006DD828@optovia.com you wrote:
We load our kernel at 1 MB. We load our associated ram-disk at 2MB. This ram-disk is currently 6.2MB compressed.
Why are you doing this? Did you check how big your _uncompressed_ images will be? Did you try to try to figure out what happens when U-Boot actually uncompresses the kernel image?
However since the increase in the size of the ram-disk we have encountered the following error. After the kernel and ram disk are loaded to their respective locations and we use "bootm 100000 200000" , this is what happens.
And this doesn't ring a bell to you? Did you try out higher load addresses, like 0x200000 for the kernel and 0x400000 for the ramdisk image?
The checksum is verified for the kernel and it is decompressed and everything is fine. It however fails in the ram-disk checksum verification. We get a checksum error.
However if we move the ramdisk load address to an area above 8MB everthing > works fine. If we load it at 7MB we see the same error.
Well - what are you complaining about then? Isn't it obvious that the Linux kernel, when being uncompressed, overwrites your ramdisk image which was loaded at a too low address?
Since our earlier ram-disk at 5.8 MB worked we surmise that something is corrupting the area between 7.8MB and 8MB. Following the sequence of
I don't think so.
Is by any chance this area being used or is there some other explanation?
Yes: it's a user error - using a too low load address.
As I said earlier if the ram-disk is loaded at 8MB or above everything is currently okay.
I bet it's also OK if you load it at 3 or 4 MB.
Best regards,
Wolfgang Denk