[U-Boot-Users] How to Handel Non-Continuous Memory Regions

Wolfgang Denk wd at denx.de
Fri Jul 25 06:28:16 CEST 2008


In message <c13b1cfc0807240756j243b6019xc95a07638c4ad2b2 at mail.gmail.com> you wrote:
> I've got an interesting problem. If loading a large image to memory
> and then copying it to flash it gets corrupted.

I think copying to flash is completely unrelated to your problem.

> It appears to happen when the image size becomes larger then a bank of
> SDRAM. I've got a 32 MByte SDRAM
> that appears as 4 banks of 8 MBytes.

You fail to mention an essential fact here.

> The system is using u-boot 1.1.3 and we will move to 1.3.3 soon.
> The memory regions are broken up like this.
> 
> 0xE0000000 - 0xE07FFFFF
> 0xE1000000 - 0xE17FFFFF
> 0xE4000000 - 0xE47FFFFF
> 0xE5000000 - 0xE57FFFFF

It seemd your 4 banks are mapped so that they do NOT form a contiguous
region - what do you think how this is supposed to work?

> What would the most appropriate way of handling files larger than 8MBytes?

Make sure to map your memory such that it forms a single contiguous
region as it should.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Einstein argued that there must be simplified explanations of nature,
because God is not capricious or arbitrary. No  such  faith  comforts
the software engineer.                             - Fred Brooks, Jr.




More information about the U-Boot mailing list