Well
     I'm not complaining about what's happening and several bells have been ringing.-)   I'm merely  asking for some clarification, corroboration.

     No I did not try to figure out what happens when U-Boot compresses the kernel image.
     I did not try a higher load address for the kernel. I shall do so and see what happens.

     Finally in our setting it is not okay if the ram-disk load address is 3MB, 4MB, 5MB, 6MB or 7MB. It works only when it is 8MB and above. Hence my question.

I'll make sure that the ram-disk is loaded at a much higher address but  what about the 7-8MB corruption. Is there anything in it?

Thanks

Sadanand



Wolfgang Denk <wd@denx.de>
Sent by: wd@denx.de

02/28/2005 03:10 PM

       
        To:        warrier@optovia.com
        cc:        u-boot-users@lists.sourceforge.net
        Subject:        Re: [U-Boot-Users] Verifying checksum problems.



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

--
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
Objects in mirror are closer than they appear.