Need help Understanding initial memory conditions.
David H. Lynch Jr
dhlii at comcast.net
Wed Oct 19 15:16:49 EST 2005
Kalle Pokki wrote:
> 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.
>
>
I have built a Kernel - that is something I am pretty compitent at.
My system is fairly similar to an abreviated xilinx ml-300, and I have
added it to the Linux configuration and made what adjustments I beleive
were needed (mostly eliminating hardware I do not have or want). The
resulting Kernel is configured and successfully built.
Alright I have RAM at physical 0x0 now. I throw a copy of a compressed
linux image into RAM (anywhere special ?) load the assorted registers
with the appropriate values, fill the board info struct., and just jump
to the start of the image and pray that load text starts coming out my
serial port ?
Once this sucker gets through the code in head_4xx.S I should be in
business, or atleast to a point where I can deal with whatever crops up.
More information about the Linuxppc-embedded
mailing list