[U-Boot-Users] Booting from NAND Flash Problems

Wolfgang Denk
2006-05-17T22:48:57Z

In message <4436349.post@talk.nabble.com> you wrote:
>
> This means that a small program has to run first. This small program is <
> 16K in size and copies U-Boot from Nand Flash into RAM and then executes it.
>
> In theory this should work fine.

This works fine in practice for a couple of systems.

> However i am having loads of issues with running u-boot with cache enabled.
> If cache is enabled then the Nand Driver (I am using the latest Linux MTD
> based driver)
> has problems as it uses a DMA copy to copy to the Nand Flash.
> If I implement cache flushing I break u-boot.

Then your port of U-Boot is broken.

> I was wondering if anyone has any hints or tips on how u-boot is used in a
> system with only Nand Flash and a Mips processor.

I don;t see anything in your setup where using NAND flash or a MIPS
CPU plays a role; all this is pretty similar on all architectures.

> I have seen other posts suggesting mips processors should run uncached but
> this is obviously slower.

Define "run uncached".

> Has the case been consider where relocation is not necessary i.e a small

Yes.

> program just loads the executable to a location and runs it. I know
> relocation can save memory but in my system it means extra copying and
> currently extra headaches!!

Then don't do it.

And BTW: Relocation does not save memory at all.

Best regards,

Wolfgang Denk

--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
The ultimate barrier is one's viewpoint.
- Terry Pratchett, _The Dark Side of the Sun_