I recommend you to try the linux-omap kernel, and add Hiroshi's patches:
http://4869037.web.fc2.com/tidspbridge-20080910.tgz
> 2. Then I downloaded the stable version DSP driver tar ball, and tried to
> compile it with montavista's kernel 2.6.26-omap2. I can compile kernel
> 2.6.26-omap2 without any error. But cannot compile mpu_driver since one
> function is missing from kernel. (power related constraint_level_get ?).
> Another thing I noticed is 2.6.26-omap2 kernel can have lockup in
> bootup, like angstrom's kernel. But I haven't seen lockup in kernel in
> google code.
Don't try it this way.
I have it working, so if you have questions just ask.
--
Felipe Contreras
Is that 14M only for the DSP, or is that including some memory for the
framebuffer?
--
Felipe Contreras
Hi all,
From: "ext Felipe Contreras" <felipe.c...@gmail.com>
Subject: [beagleboard] Re: How to get DSP working in beagleboard?
Date: Mon, 15 Sep 2008 19:18:47 +0300
>
> On Mon, Sep 15, 2008 at 6:54 PM, guo tang <tang...@gmail.com> wrote:
> > Gentlemen,
> >
> > I was trying to get DSP programming working in beagleboard on Sunday without
> > any luck. I would
> > appreciate if someone could give me a hand.
> >
> > What I have done so far, without luck :(
> >
> > 1. I found most information is available from omapzoom.org. So I got its git
> > tree, and follow the instruction there, use
> > beagleboard default configuration as starting point, and enabled DSP
> > bridge driver. Use the three-step instruction in beagleboard google code
> > project:
> > "make CROSS_COMPILE=XXX, distclean; beagleboardConfig; make menuconfig to
> > enable DSP; make uImage"
> > But omapzoom's kernel cannot compile (master branch). There are several
> > strange things, first the make distclean step removed lots of header files
> > that are in git source code control. Second I had compiler error since a
> > structure is not defined anywhere.
> > Anyone can compile this kernel? Or know which version in omapzoom's git
> > tree can compile and works?
>
> I recommend you to try the linux-omap kernel, and add Hiroshi's patches:
> http://4869037.web.fc2.com/tidspbridge-20080910.tgz
Now the latest patchset is:
http://4869037.web.fc2.com/tidspbridge-20080913.tgz
So steps would be:
$ git clone http://www.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git
$ cd linux-omap-2.6
$ wget http://4869037.web.fc2.com/tidspbridge-20080913.tgz
$ tar xvzf tidspbridge-20080913.tgz
$ git am *.patch
$ make omap3_beagle_defconfig
$ make menuconfig
Add the following options in the menuconfig
CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=14
CONFIG_MPU_BRIDGE=m
CONFIG_DISABLE_BRIDGE_DVFS=y
CONFIG_DISABLE_BRIDGE_PM=y
$ make all && make uImage && \
make INSTALL_MOD_PATH=/media/disk-1/ modules_install && \
cp -i arch/arm/boot/uImage /media/disk-1/ && \
sudo umount /media/disk && sudo umount /media/disk-1
Also you can get bridge sample binaries as below:
https://omapzoom.org/gf/download/frsrelease/132/632/dspbridge_binaries.tar.bz2
And extract it somewhere on rootfs in SD 2nd partition in advance.
After kernel booted up:
beagleboard$ depmod -a && \
modprobe bridgedriver phys_mempool_base=0 base_img=ddbase_tiomap3430.dof64P
beagleboard$ ./ping.out
I hope the above would be some help.
Hiroshi DOYU
Hi Felipe,
From: "ext Felipe Contreras" <felipe.c...@gmail.com>
It's not a real physical memory, but a virtual address range which can
be used for a DMA mapping. And some DSP binaries seem to require this
value(14MB). FB requires just 2MB at most for this value presently.
I am afraid that this requirement might not be necessary if dsp MMU
was implemented correctly, but still under investigation;p
Hiroshi DOYU
From: "ext Felipe Contreras" <felipe.c...@gmail.com>
Subject: [beagleboard] Re: How to get DSP working in beagleboard?
Date: Mon, 15 Sep 2008 19:18:47 +0300
>
> On Mon, Sep 15, 2008 at 6:54 PM, guo tang <tang...@gmail.com> wrote:
> > Gentlemen,
> >
> > I was trying to get DSP programming working in beagleboard on Sunday without
> > any luck. I would
> > appreciate if someone could give me a hand.
> >
> > What I have done so far, without luck :(
> >
> > 1. I found most information is available from omapzoom.org. So I got its git
> > tree, and follow the instruction there, use
> > beagleboard default configuration as starting point, and enabled DSP
> > bridge driver. Use the three-step instruction in beagleboard google code
> > project:
> > "make CROSS_COMPILE=XXX, distclean; beagleboardConfig; make menuconfig to
> > enable DSP; make uImage"
> > But omapzoom's kernel cannot compile (master branch). There are several
> > strange things, first the make distclean step removed lots of header files
> > that are in git source code control. Second I had compiler error since a
> > structure is not defined anywhere.
> > Anyone can compile this kernel? Or know which version in omapzoom's git
> > tree can compile and works?
>
> I recommend you to try the linux-omap kernel, and add Hiroshi's patches:
> http://4869037.web.fc2.com/tidspbridge-20080910.tgz
Now the latest patchset is:
http://4869037.web.fc2.com/tidspbridge-20080913.tgz
So steps would be:
$ git clone http://www.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git
$ cd linux-omap-2.6
$ wget http://4869037.web.fc2.com/tidspbridge-20080913.tgz
$ tar xvzf tidspbridge-20080913.tgz
$ git am *.patch
$ make omap3_beagle_defconfig
$ make menuconfig
Add the following options in the menuconfig
CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=14
CONFIG_MPU_BRIDGE=m
CONFIG_DISABLE_BRIDGE_DVFS=y
CONFIG_DISABLE_BRIDGE_PM=y
$ make all && make uImage && \
make INSTALL_MOD_PATH=/media/disk-1/ modules_install && \
cp -i arch/arm/boot/uImage /media/disk-1/ && \
sudo umount /media/disk && sudo umount /media/disk-1
Also you can get bridge sample binaries as below:
https://omapzoom.org/gf/download/frsrelease/132/632/dspbridge_binaries.tar.bz2
And extract it somewhere on rootfs in SD 2nd partition in advance.
After kernel booted up:
beagleboard$ depmod -a && \
modprobe bridgedriver phys_mempool_base=0 base_img=ddbase_tiomap3430.dof64P
beagleboard$ ./ping.out
I hope the above would be some help.
Hiroshi DOYU
>
From: "ext Felipe Contreras" <felipe.c...@gmail.com>
It's not a real physical memory, but a virtual address range which can
I guess that it can be solved by appending the header file location like:
diff --git a/drivers/dsp/bridge/Kbuild b/drivers/dsp/bridge/Kbuild
index 29b686e..a4f29b6 100644
--- a/drivers/dsp/bridge/Kbuild
+++ b/drivers/dsp/bridge/Kbuild
@@ -33,6 +33,7 @@ ccflags-y += -D_TI_ -D_DB_TIOMAP -DTMS32060 \
-DCHNL_MESSAGES -DUSE_LEVEL_1_MACROS
#Header files
+ccflags-y += -Iarch/arm/plat-omap/include
ccflags-y += -Idrivers/dsp/bridge/services
ccflags-y += -Idrivers/dsp/bridge/wmd
ccflags-y += -Idrivers/dsp/bridge/pmgr
I haven't tested the above, if it doesn't work, try to adjust the above path.
Hiroshi DOYU
But after bisecting around. I found the last good version before omap usb
is broken.
commit c9a955b1458b9e9f8aa2a1760622929927e898b2
Author: Jouni Hogander <jouni.h...@nokia.com>
Date: Fri Aug 15 12:31:24 2008 +0300
The version after that is mainline 2.6.27-rc5 to l-o merge. Seems broke
beagle usb.
Now the dsp patches applied sucessfully on top of
c9a955b1458b9e9f8aa2a1760622929927e898b2.
But when I try to insert the module, I got the following error.
Any thought on this?
Another thing is I cannot find the ddbase_tiomap3430.dof64P file, I can
only find ddspbase_tiomap3430.dof64P.
[root@beagleboard /dspbridge_binaries]# modprobe bridgedriver
phys_mempool_base=0 base_img=ddspbase_tiomap3430.dof64P
coherent allocation too big (requested 0x400000 mask 0xffffffff)
insmod: cannot insert
'/lib/modules/2.6.27-rc3-omap1-04876-g5ab15e2/kernel/drivers/dsp/bridge/bridgedriver.ko':
Operation not permitted
modprobe: failed to load module bridgedriver
Thanks,
Guo
From: "ext Guo Tang" <tang...@gmail.com>
Subject: Re: [beagleboard] Re: How to get DSP working in beagleboard?
Date: Thu, 18 Sep 2008 23:27:26 -0700 (PDT)
>
> Still cannot have the dsp driver to compile for v2.6.26-omap2 tag. The
> code is using new mach/clock.h brought in from a later merge.
right. for this backporting, you may need something like:
sed -i -e 's@<mach/@<asm/arch/@g' drivers/dsp/bridge/*/*.[ch]
> But after bisecting around. I found the last good version before omap usb
> is broken.
>
> commit c9a955b1458b9e9f8aa2a1760622929927e898b2
> Author: Jouni Hogander <jouni.h...@nokia.com>
> Date: Fri Aug 15 12:31:24 2008 +0300
>
> The version after that is mainline 2.6.27-rc5 to l-o merge. Seems broke
> beagle usb.
>
> Now the dsp patches applied sucessfully on top of
> c9a955b1458b9e9f8aa2a1760622929927e898b2.
I think that the above should be reported on l-o ML, and someone could help.
http://vger.kernel.org/vger-lists.html#linux-omap
> But when I try to insert the module, I got the following error.
> Any thought on this?
Did you set the following "CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=14" in menuconfig?
#
# Frame buffer hardware drivers
#
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_VIRTUAL is not set
CONFIG_FB_OMAP=y
# CONFIG_FB_OMAP_LCDC_EXTERNAL is not set
CONFIG_FB_OMAP_LCD_MIPID=y
# CONFIG_FB_OMAP_BOOTLOADER_INIT is not set
CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=14
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
Hiroshi DOYU
Hi Guo,
Date: Thu, 18 Sep 2008 23:27:26 -0700 (PDT)
From: "ext Guo Tang" <tang...@gmail.com>
Subject: Re: [beagleboard] Re: How to get DSP working in beagleboard?
right. for this backporting, you may need something like:
>
> Still cannot have the dsp driver to compile for v2.6.26-omap2 tag. The
> code is using new mach/clock.h brought in from a later merge.
sed -i -e 's@<mach/@<asm/arch/@g' drivers/dsp/bridge/*/*.[ch]
I think that the above should be reported on l-o ML, and someone could help.
> But after bisecting around. I found the last good version before omap usb
> is broken.
>
> commit c9a955b1458b9e9f8aa2a1760622929927e898b2
> Author: Jouni Hogander <jouni.h...@nokia.com>
> Date: Fri Aug 15 12:31:24 2008 +0300
>
> The version after that is mainline 2.6.27-rc5 to l-o merge. Seems broke
> beagle usb.
>
> Now the dsp patches applied sucessfully on top of
> c9a955b1458b9e9f8aa2a1760622929927e898b2.
http://vger.kernel.org/vger-lists.html#linux-omap
Did you set the following "CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=14" in menuconfig?
> But when I try to insert the module, I got the following error.
> Any thought on this?
From: "ext guo tang" <tang...@gmail.com>
Subject: Re: [beagleboard] Re: How to get DSP working in beagleboard?
Date: Fri, 19 Sep 2008 08:26:20 -0700
<snip>
> >
> > > But when I try to insert the module, I got the following error.
> > > Any thought on this?
> >
> > Did you set the following "CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=14" in
> > menuconfig?
>
>
> My fault. I didn't. I am using the default value from beagle board default
> configuration, which is
> CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=4
>
> One question: Which entry in menuconfig set
> CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE? I am not suppose to edit the .config
> file manually, right? I used "git grep CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE",
> but I cannot find which kconfig file is controlling that.
-> Device Drivers
-> Graphics support
-> Support for frame buffer devices (FB [=y])
-> OMAP frame buffer support (EXPERIMENTAL) (FB_OMAP [=y])
You can fine it in the above.
Hiroshi DOYU
I'm not sure you really need that file.
I always use baseimage.dof which is found on the omapzoom site:
https://omapzoom.org/gf/project/openmax/
--
Felipe Contreras
Thanks!
Now modeprobe return no error codes. I tried both
base_img=ddspbase_tiomap3430.dof64P and baseimage.dof. No error.
When I tried to run ./ping.out, I get error "missing libbridge.so.2".
Then I compiled mpu_api from dspbridge_LDP_v1.4.tar.gz package (Is this
the right one to work with the 09-13 bridge driver?), copy the resulting
libbridge.so to target, then ln -s libbridge.so libbridge.so.2.
Run ./ping.out
[root@beagleboard /dspbridge_binaries]# ./ping.out
DSP device detected !!
DSPNode_Allocate failed: 0x80008008
Any suggestion on where could be wrong?
Thanks,
Guo
> Hiroshi DOYU
>
<snip>
> When I tried to run ./ping.out, I get error "missing libbridge.so.2".
> Then I compiled mpu_api from dspbridge_LDP_v1.4.tar.gz package (Is this
> the right one to work with the 09-13 bridge driver?), copy the resulting
> libbridge.so to target, then ln -s libbridge.so libbridge.so.2.
>
> Run ./ping.out
>
> [root@beagleboard /dspbridge_binaries]# ./ping.out
> DSP device detected !!
> DSPNode_Allocate failed: 0x80008008
>
> Any suggestion on where could be wrong?
How about setting memory reservation for 6MB from 128MB ram in advance
as below?
ex)
- Append "mem=122m" on CONFIG_CMDLINE of kernel menuconfig
- modprobe phys_mempool_base=0x87a00000 phys_mempool_size=0x600000
Hiroshi DOYU
On Sun, 21 Sep 2008, Hiroshi DOYU wrote:
> From: "ext Guo Tang" <tang...@gmail.com>
> Subject: Re: [beagleboard] Re: How to get DSP working in beagleboard?
> Date: Sat, 20 Sep 2008 23:26:42 -0700 (PDT)
>
> <snip>
>
> > When I tried to run ./ping.out, I get error "missing libbridge.so.2".
> > Then I compiled mpu_api from dspbridge_LDP_v1.4.tar.gz package (Is this
> > the right one to work with the 09-13 bridge driver?), copy the resulting
> > libbridge.so to target, then ln -s libbridge.so libbridge.so.2.
> >
> > Run ./ping.out
> >
> > [root@beagleboard /dspbridge_binaries]# ./ping.out
> > DSP device detected !!
> > DSPNode_Allocate failed: 0x80008008
> >
> > Any suggestion on where could be wrong?
>
> How about setting memory reservation for 6MB from 128MB ram in advance
> as below?
It does not work. But I think it might because I am not in the latest
version of l-o tree, not the dspbridge driver.
I updated to the latest l-o version. Then applied your 0913 patches, then
picked up the usb fixed from mans' tree (the beagle-10 tag).
Author: Mans Rullgard <ma...@mansr.com>
Date: Sat Sep 6 16:11:00 2008 +0100
usb: musb: fix something
This makes USB work on the Beagleboard. I don't know why.
The result is a little strange.
If I load the module this following way, ping.out will fail
[root@beagleboard /dspbridge_binaries]# modprobe bridgedriver
phys_mempool_base=0 base_img=baseimage.dof
[root@beagleboard /dspbridge_binaries]# ./ping.out
DSP device detected !!
DSPNode_Allocate failed: 0x8000801d
Load a different base image
modprobe bridgedriver phys_mempool_base=0
base_img=ddspbase_tiomap3430.dof64P
DSP device detected !!
DSPNodeCreate succeeded
DSPNode_registerNotify succeeded
DSPNode_run succeeded
Ping: Id 1.000000 Msg 0.000000 Mem 15408.000000
Ping: Id 1.000000 Msg 1.000000 Mem 15408.000000
...
It works!
But it is very unstable, if I run ping.out several times, I will ended up
with a really bad system crash with tons of the following logging in
console.
irq -33, desc: c0331cf8, depth: 0, count: 0, unhandled: 0
->handle_irq(): c0071500, handle_bad_irq+0x0/0x228
->chip(): 00000000, 0x0
->action(): 00000000
...
Any idea on how to fix this?
If the base image will make a difference here, where can I download the
ddbase_tiomap3430.dof64P image in your original instruction?
Another thing, your 0920 patch seems cannot be applied. I got the
following errors.
Applying: BRIDGE: Remove paths in header comment
error: arch/arm/plat-omap/include/dspbridge/_chnl_sm.h: does not exist in
index
error: arch/arm/plat-omap/include/dspbridge/_dcd.h: does not exist in
index
error: arch/arm/plat-omap/include/dspbridge/brddefs.h: does not exist in
index
I found in the tarball, you have two patches named 0001-xxx
0001-BRIDGE-Kconfig-Entry.patch
0001-BRIDGE-Remove-paths-in-header-comment.patch
Is the second 0001 there by mistake? Take the second one out seems solved
the
problem.
Thanks,
Guo
From: "ext Guo Tang" <tang...@gmail.com>
Subject: Re: [beagleboard] Re: How to get DSP working in beagleboard?
Date: Sun, 21 Sep 2008 21:43:00 -0700 (PDT)
<snip>
> But it is very unstable, if I run ping.out several times, I will ended up
> with a really bad system crash with tons of the following logging in
> console.
>
> irq -33, desc: c0331cf8, depth: 0, count: 0, unhandled: 0
> ->handle_irq(): c0071500, handle_bad_irq+0x0/0x228
> ->chip(): 00000000, 0x0
> ->action(): 00000000
> ...
Ramesh, do you have any thoughts on the above kernel message?
> Any idea on how to fix this?
> If the base image will make a difference here, where can I download the
> ddbase_tiomap3430.dof64P image in your original instruction?
Hm...I don't think that this comes from the difference between dsp
images and may be something else in kernel, but right now I don't have
any info.
> Another thing, your 0920 patch seems cannot be applied. I got the
> following errors.
>
> Applying: BRIDGE: Remove paths in header comment
> error: arch/arm/plat-omap/include/dspbridge/_chnl_sm.h: does not exist in
> index
> error: arch/arm/plat-omap/include/dspbridge/_dcd.h: does not exist in
> index
> error: arch/arm/plat-omap/include/dspbridge/brddefs.h: does not exist in
> index
>
> I found in the tarball, you have two patches named 0001-xxx
> 0001-BRIDGE-Kconfig-Entry.patch
> 0001-BRIDGE-Remove-paths-in-header-comment.patch
>
> Is the second 0001 there by mistake? Take the second one out seems solved
> the
> problem.
Right. thank you for letting me know. I will remove that patch from tarball.
Hiroshi DOYU
I have seen these messages a lot, not only on the beagleboard.
--
Felipe Contreras
> -----Original Message-----
> From: Hiroshi DOYU [mailto:Hirosh...@gmail.com]
> Sent: Monday, September 22, 2008 11:14 AM
> To: tang...@gmail.com; grg...@ti.com
> Cc: beagl...@googlegroups.com; felipe.c...@gmail.com;
> h-kan...@ti.com
> Subject: Re: [beagleboard] Re: How to get DSP working in beagleboard?
>
> Hi Guo,
>
> From: "ext Guo Tang" <tang...@gmail.com>
> Subject: Re: [beagleboard] Re: How to get DSP working in beagleboard?
> Date: Sun, 21 Sep 2008 21:43:00 -0700 (PDT)
>
> <snip>
>
> > But it is very unstable, if I run ping.out several times, I
> will ended
> > up with a really bad system crash with tons of the
> following logging
> > in console.
> >
> > irq -33, desc: c0331cf8, depth: 0, count: 0, unhandled: 0
> > ->handle_irq(): c0071500, handle_bad_irq+0x0/0x228
> > ->chip(): 00000000, 0x0
> > ->action(): 00000000
> > ...
>
> Ramesh, do you have any thoughts on the above kernel message?
These messages are from the Kernel, I didn't give a try recently on beagle board.
I will findout from other team members on their observation.
Thanks
Ramesh Gupta G