
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