This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

OMAP L138 memory map

Other Parts Discussed in Thread: OMAPL138

Hi,

I'm an OMAP beginner, I do really appreciate the huge documentation and software available for this processor. I'm investigating the possibility to port a the hArtes toolchain (www.hartes.org) for this processor, now we are addressing a similar Atmel SOC (diopsis).

I'm sure that there is some page on some document that could answer to my questions, but at the moment I didn't find the right pages... Maybe some of you can quickly answer to my question.

My questions are:

- do the DSP internal resources are mapped into the ARM I/O space?  where ? can I access them from linux simply using /dev/mem ?

- I've a OMAPL138 SOM 64M (Zoom experimenter kit), I downloaded the sources of the dsplink and I looked at splink_linux_1_63/dsplink/config/all/CFG_OMAPL138GEM_SHMEM.c should I change the mapping? why in http://wiki.davincidsp.com/index.php/Changing_DSPLink_Memory_Map I see addresses that goes from 0x8000000 0x90000000 instead in /CFG_OMAPL138GEM_SHMEM.c start from 0xC3E00000?

- is there a document that describes in detail what ARM should do to load and start DSP (in general control) without using DSPlink?

thanks

Andrea

 

  • Andrea,

     I just noticed that this is a fairly old topic with no replies.  Are you still seeking feedback?

    -Tommy

  • Hi Tommy,

    I succeeded in adapting our transparent toolchain to the OMAP, just using dsplink as it is. But onestly I didn't find a clear explanation to the questions that I posted.

    thanks.

    Andrea

  • Andrea,

    I apologize for the delay. I missed this post.

    My answers inline:

    - do the DSP internal resources are mapped into the ARM I/O space?  where ? can I access them from linux simply using /dev/mem ?

    [Deepali]: Which DSP internal resources are you referring to? We map DSP memory into ARM space using ioremap_nocache. We map the registers that we need for enabling power up/down of DSP using IO_ADDRESS. We do not use/enable /dev/mem for any internal resource.

    - I've a OMAPL138 SOM 64M (Zoom experimenter kit), I downloaded the sources of the dsplink and I looked at splink_linux_1_63/dsplink/config/all/CFG_OMAPL138GEM_SHMEM.c should I change the mapping? why in http://wiki.davincidsp.com/index.php/Changing_DSPLink_Memory_Map I see addresses that goes from 0x8000000 0x90000000 instead in /CFG_OMAPL138GEM_SHMEM.c start from 0xC3E00000?

    [Deepali]: You must change the memory map as per your board memory specs. That is example reference code assuming 256 MB. Please extrapolate the concepts to 64MB.

    - is there a document that describes in detail what ARM should do to load and start DSP (in general control) without using DSPlink?

    [Deepali]: DSPLink provides PROC API's for boot loading the DSP. We do not have any wiki links on how to do it without DSPLink. But we have different boot modes in DSPLink which support the application writer who wants to load and start DSP externally. Specifically, the boot mode DSP_BootMode_NoBoot  will tell DSPLink not to load/start DSP as an external entity is doing it. More details in Programmer's Guiede in $DSPLINK/doc

    Deepali