Tuesday, April 07, 2009

OMAP3 TI DSP Bridge

The following instructions are for 2.6.28 linux omap pm branch + tidspbridge
Few links:
* http://gitorious.org/projects/tidspbridge/repos/mainline - TIDSP Bridge codebase
* http://patchwork.kernel.org/project/linux-omap/list/?q=DSP - pending patches on linux-omap mailing list
* http://git.kernel.org/?p=linux/kernel/git/khilman/linux-omap-pm.git;a=summary - kevin's tree for Power management

Steps:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm.git
cd linux-omap-pm
git checkout -b pm-2.6.28 --track origin/pm-2.6.28
git checkout -b tidspbridge
git pull git://gitorious.org/tidspbridge/mainline.git tidspbridge-pm-2.6.28

make omap_3430sdp_defconfig

for powermanagement:
make CONFIG_OMAP_PM_SRF=y
CONFIG_MPU_BRIDGE=m or y which ever is your preference..
enable BRIDGE_DVFS as y
make uImage;make modules

and bingo you should have arch/arm/mach-omap2/dspbridge.ko and arch/arm/mach-omap2/dspbridge.ko if you have dspbridge as a a module ;)...

insmod dspbridge.ko
insmod bridgedriver.ko shm_size=0x400000 phys_mempool_base=0 base_img=baseimage.dof should have the bridge driver running with a baseimage..

[Update: As Ragha mentioned in his comment, the other way would be to set up a reserved memory using mem=XYZM and allocate the remaining memory as statically allocated memory to the bridge driver -> there is a linux-omap post somewhere which I need to dig up for details :( ]

(okay, i need to figure out where baseimage.dof or other dofs can be got from.. but checkout the pointers felipe says here: http://elinux.org/BeagleBoard/DSP_Howto)

4 comments:

Ragha said...

If you use phys_mempool_base=0, the shared memory required for bridge is pulled from DMA zone. Was that your intention?

You can reserve 6M of RAM and provide that address here.

Nishanth Menon said...

that is correct. with the new allocation strategy that Hiroshi introduced for arch/arm/mach-omap2/dspbridge.ko the rellocation risk of dma_alloc_coherent fragmentation should no longer be present

Ajit said...

Hi, Will it work for OMAP3530 as well.

Nishanth Menon said...

yes.