Instruction OCM

Temerkhanov temerkhanov at yandex.ru
Tue May 20 21:11:25 EST 2008


On Tuesday 20 May 2008 13:19:26 mojtaba wrote:
> Thank you for your email. But what is the solution to that? I have seen
> this in a thesis:
>
> "when using the OCM buses to connect memory, we can only use virtual memory
> as long as the virtual address is the same as the physical address, which
> is conceptually
> the same as using a system without MMU. Therefore porting Linux to a
> system based on an OCM memory system is not possible"
>
> http://ce.et.tudelft.nl/publicationfiles/1367_700_thesis.pdf
>
> Is that right? What do you suggest?
>


Getting OCM-based devices (and even memory) to work in Linux is possible. All 
you need is to setup a mapping with virtual addresses equal to physical (some  
info can be found here: 
http://courses.ece.uiuc.edu/ece412/MP_Files/mp2/20060623-XUP-Linux-Tutorial-REVISION-FINAL.pdf)

Furthermore, if you really need to get the code running from OCM, I'd suggest 
to setup such MMU mapping for OCM region very early - it can be done in 
initial_mmu function at head_4xx.S. Look at line 936 (#if 
defined(CONFIG_SERIAL_TEXT_DEBUG) && defined(SERIAL_DEBUG_IO_BASE))
 - that's very good point to start.

Regards, Sergey Temerkhanov


More information about the Linuxppc-embedded mailing list