Launch a program on DSP

Hi All,
  I wanted to know how I can launch a program on DSP of beagleboard
instead of ARM

Regards,
Neelima

Hi,
That depends on the hardware setup that you have.

check http://elinux.org/BeagleBoard/DSP_Howto [1]

If you have a JTAG + TI CCS (Code Composer Studio) it is pretty easy.
set up the memory map (use some CCS Gel files) and you can load the
program
to the dsp mem via JTAG and execute.

In the non-JTAG case, the basic idea is the ARM and DSP can be made to
share memory (that is some memory management stuff - DSP MMU).
and the ARM can write the dsp code in to the shared mem and make the
DSP execute it. There is provision in the ARM side to control the DSP,
reset it etc.

All these stuff is done by the dsp-bridge driver which is explained
in [1] ,

This is pretty much explained in the OMAP TRM - well it is a rather
large document , but worth a read

~D

Hi,

I tried to go through that tutorial at http://elinux.org/BeagleBoard/DSP_Howto
but a make under the "Kernal Driver" section errored out.

i.e.:

git clone git://github.com/felipec/linux-omap.git
git checkout -b felipec v2.6.28-felipec1
cd linux-omap
make omap3_beagle_defconfig
make

The last line here had the error:

/bin/sh: arm-linux-gcc: command not found
make[1]: *** [kernel/bounds.s] Error 127
make: *** [prepare0] Error 2

I went and found arm-linux-gcc-3.4.1.tar.bz2 and was able to fix this
first error but then got another. The subsequent error was:

cc1: error: invalid option `abi=aapcs-linux'
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2

I am concerned that I may not have the newest version of the cross
compiler arm-linux-gcc. Is this actually the problem? Has anyone had a
problem with this? I have not been able to find a newer version of the
cross compiler, where can I get the newest version of arm-linux-gcc?

Any help would be appreciated.

Thanks,
Bob

Hi Bob,

If you want to try the DSP on Beagleboard the way mentioned in [1], you can try the Poky [2]
If you are not able to follow any instructions, please post a mail here.

regards

Jesslyn

[1] http://elinux.org/BeagleBoard/DSP_Howto
[2] http://elinux.org/BeagleBoard/Poky

The bitbake compilation failed with :

NOTE: package gdbm-native-1.8.3: started
NOTE: package gdbm-native-1.8.3-r2: task do_patch: started
ERROR: function do_install failed
ERROR: log data follows (/home/mimosa/poky/build/tmp/work/armv7a-none-
linux-gnueabi/external-csl-toolchain-2008q3-72-r1/temp/log.do_install.
25743)

EXTERNAL_TOOLCHAIN is /usr/local/csl/arm-2008q3
cp: cannot stat `/usr/local/csl/arm-2008q3/arm-none-linux-gnueabi/

libc/lib/*': No such file or directory
NOTE: Task failed: /home/mimosa/poky/build/tmp/work/armv7a-none-linux-
gnueabi/external-csl-toolchain-2008q3-72-r1/temp/log.do_install.25743
NOTE: package external-csl-toolchain-2008q3-72-r1: task do_install:
failed
ERROR: TaskFailed event exception, aborting
NOTE: package external-csl-toolchain-2008q3-72: failed
ERROR: Build of /home/mimosa/poky/meta-texasinstruments/packages/meta/
external-csl-toolchain_2008q3-72.bb do_install failed
NOTE: Applying patch '1.2.3.3.dfsg.patch'
__builtin__:5: DeprecationWarning: the md5 module is deprecated; use
hashlib instead
NOTE: Applying patch 'makefile.patch'
__builtin__:5: DeprecationWarning: the md5 module is deprecated; use
hashlib instead
NOTE: Running task 85 of 2105 (ID: 729, /home/mimosa/poky/meta/
packages/m4/m4-native_1.4.9.bb, do_compile)
NOTE: package m4-native-1.4.9: started
NOTE: package m4-native-1.4.9-r0: task do_compile: started
ERROR: Task 375 (/home/mimosa/poky/meta-texasinstruments/packages/meta/
external-csl-toolchain_2008q3-72.bb, do_install) failed
NOTE: Waiting for 3 active tasks to finish
NOTE: 1: /home/mimosa/poky/meta/packages/zlib/zlib-native_1.2.3.bb,
do_patch (25744)
NOTE: 2: /home/mimosa/poky/meta/packages/m4/m4-native_1.4.9.bb,
do_compile (25859)
NOTE: 3: /home/mimosa/poky/meta/packages/gdbm/gdbm-native_1.8.3.bb,
do_patch (25748)
NOTE: package gdbm-native-1.8.3-r2: task do_patch: completed
NOTE: package gdbm-native-1.8.3: completed
NOTE: Applying patch 'visibility.patch'
NOTE: Waiting for 2 active tasks to finish
NOTE: 1: /home/mimosa/poky/meta/packages/zlib/zlib-native_1.2.3.bb,
do_patch (25744)
NOTE: 2: /home/mimosa/poky/meta/packages/m4/m4-native_1.4.9.bb,
do_compile (25859)
NOTE: Applying patch 'autotools.patch'
NOTE: package zlib-native-1.2.3-r6: task do_patch: completed
NOTE: package zlib-native-1.2.3: completed
NOTE: Waiting for 1 active tasks to finish
NOTE: 1: /home/mimosa/poky/meta/packages/m4/m4-native_1.4.9.bb,
do_compile (25859)
NOTE: package m4-native-1.4.9-r0: task do_compile: completed
NOTE: package m4-native-1.4.9: completed
NOTE: Tasks Summary: Attempted 81 tasks of which 80 didn't need to be
rerun and 1 failed.
ERROR: '/home/mimosa/poky/meta-texasinstruments/packages/meta/external-
csl-toolchain_2008q3-72.bb' failed
NOTE: build 200907241315: completed

My rootfs does not have the /usr/local/csl that the .bb file is
looking for. Any idea of where I could get this?

-Bob

Did you try codesourcery's compiler?

I don't have it installed, I use openembedded/bitbake.

Bob,

You still need to download the toolchain as mentioned in [1]
Look under the section " Get a toolchain" Follow the link and download and install the tar ball as mentioned.

  • Jesslyn

[1] http://elinux.org/BeagleBoard/Poky

Alright thanks, sorry I'm still new with the Beagleboard. I
appreciate the help.

No, you are using poky/bitbake, which is something different. After being taken over by intel ARM platform support in poky has pretty much been killed

No, I used openembedded and bitbake to compile my Angstrom image. I am
not familiar with pokey. Am I then following the wrong tutorial?

Thanks,
Bob

What should I use then, if not the poky tutorial?

You are following the right tutorial if you want to follow DSP Bridge which is only integrated with Poky. Instructions provided in the [1] are done using the bitbake framework in Poky.

  • Jesslyn

[1] http://elinux.org/BeagleBoard/DSP_Howto

Hello!