David H. Lynch Jr. wrote: > Kalle Pokki wrote: > >> 1. Put RAM to 0x0000000 and flash to some location it mirrors to your >> boot vector. Linux always expects your physical memory to be at zero. >> It is then mapped to virtual address 0xC0000000. > > In both this list and elsewhere I have seen several references to > the difficulty setting up Linux with a physical RAM base other than > 0x0. I was hoping that I could bypass that by re-arranging physical > memory using the BAT's or MMU. > I am gathering that while this is possible, that it not sufficient. > That if memory is re-arranged after power-on it has to be done by > something Linux is not aware of.
I'm afraid you cannot fool Linux that way... it will take control of the BATs and MMU. Even as a concept, you cannot re-arrange physical memory with the MMU at all - it's virtual memory when you do the address translation. The only way to arrange physical memory is to program the memory controller. I don't know how flexible the OCM controller in ppc405 is, but I'd be surprised if one couldn't freely set the addresses to whatever suits best.