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.

C6Run error in beagleboard -XM

Other Parts Discussed in Thread: OMAP3530

Hello,

I compiled and installed the C6Run successfully with kernel 2.6.38 and ubuntu10.10.

zooliet@omap:/workspace/devel/dsp/C6Run_0_97_02_02_example_install$ uname -a
Linux omap 2.6.38.2-x1 #1 SMP Fri Apr 1 14:20:35 UTC 2011 armv7l GNU/Linux

My boot arguments are as following.

<_02_02_example_install/examples/c6runlib/emqbit$ cat /proc/cmdline
console=ttyO2,115200n8 console=tty0 root=/dev/mmcblk0p2 rootwait ro vram=12MB mem=99M@0x80000000 mem=384M@0x88000000 omapfb.mode=dvi:1280x720MR-16@60 fixrtc buddy=none mpurate=800

When I run the 'loadmodules.sh' file, it loads modules O.K.

zooliet@omap:/workspace/devel/dsp/C6Run_0_97_02_02_example_install$ lsmod
Module                  Size  Used by
lpm_omap3530            6916  0
dsplinkk              126815  1 lpm_omap3530
cmemk                  24332  0
rtc_twl                 4562  0
rtc_core               18149  1 rtc_twl
smsc95xx               12673  0
joydev                 11459  0
gpio_keys               6280  0
usbhid                 39191  0

 

I have two problems when I try example programs.

 

1. When I tried 'bench_dsp' in 'examples/c6runlib/emqbit' directory, I got the following error.

<_02_02_example_install/examples/c6runlib/emqbit$ ./bench_dsp
CMEM Error: init: Failed to open /dev/cmem: 'Permission denied'
CMEM_init() failed!
Segmentation fault

So, I tried 'sudo ./bench_dsp'. This time, the first two disappeared, but I got a kernel oops message below.

[ 1315.890441] Unable to handle kernel paging request at virtual address e331e09c
[ 1315.898010] pgd = de0d0000
[ 1315.900848] [e331e09c] *pgd=00000000
[ 1315.904571] Internal error: Oops: 5 [#1] SMP
[ 1315.909057] last sysfs file: /sys/devices/virtual/ti/lpm0/uevent
[ 1315.915313] Modules linked in: lpm_omap3530 dsplinkk cmemk rtc_twl rtc_core smsc95xx joydev gpio_keys usbhid
[ 1315.925659] CPU: 0    Not tainted  (2.6.38.2-x1 #1)
[ 1315.930755] PC is at _raw_spin_lock_irqsave+0xc/0x30
[ 1315.935943] LR is at down_interruptible+0x10/0x58
[ 1315.940887] pc : [<c066bd14>]    lr : [<c00ca810>]    psr: a0000093
[ 1315.940887] sp : de09dee0  ip : 0000545e  fp : be87abf8
[ 1315.952880] r10: bf075000  r9 : de09c000  r8 : 00000000
[ 1315.958343] r7 : 000fffff  r6 : ddf1e094  r5 : e331e09c  r4 : 10001003
[ 1315.965148] r3 : a0000013  r2 : 00000001  r1 : 10001003  r0 : e331e09c
[ 1315.971984] Flags: NzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment user
[ 1315.979522] Control: 10c5387d  Table: 9e0d0019  DAC: 00000015
[ 1315.985534] Process bench_dsp (pid: 1235, stack limit = 0xde09c2f8)
[ 1315.992065] Stack: (0xde09dee0 to 0xde09e000)
[ 1315.996643] dee0: deab7750 ddecbaa0 da0ed100 10001003 e331e09c bf075038 bf075000 00000000
[ 1316.005187] df00: c15bd460 10001003 000021a4 00000000 00000000 c018484c de0d66a4 00000000
[ 1316.013732] df20: c15bde60 00086300 00000000 c0346b6c 40237000 00000000 c15bd468 ddecbaa0
[ 1316.022277] df40: 00000000 00000000 ddfade00 00000000 00000000 00000000 c15bd460 c15bd460
[ 1316.030853] df60: 00000000 c15bd460 00000000 10001003 00000004 00000000 de09c000 00000000
[ 1316.039398] df80: be87abf8 c0184e1c 00000000 00000000 00000000 00033b10 be87ab34 00000036
[ 1316.047943] dfa0: c00604a4 c0060320 00000000 00033b10 00000004 10001003 00000000 00000148
[ 1316.056488] dfc0: 00000000 00033b10 be87ab34 00000036 000599d0 0001d9f0 0001cd08 be87abf8
[ 1316.065032] dfe0: be87ab10 be87ab08 0001c4c4 401d6d4c 60000010 00000004 00668000 01f23900
[ 1316.073608] [<c066bd14>] (_raw_spin_lock_irqsave+0xc/0x30) from [<c00ca810>] (down_interruptible+0x10/0x58)
[ 1316.083801] [<c00ca810>] (down_interruptible+0x10/0x58) from [<bf075038>] (lpm_ioctl+0x38/0x214 [lpm_omap3530])
[ 1316.094390] [<bf075038>] (lpm_ioctl+0x38/0x214 [lpm_omap3530]) from [<c018484c>] (do_vfs_ioctl+0x80/0x5dc)
[ 1316.104492] [<c018484c>] (do_vfs_ioctl+0x80/0x5dc) from [<c0184e1c>] (sys_ioctl+0x74/0x7c)
[ 1316.113128] [<c0184e1c>] (sys_ioctl+0x74/0x7c) from [<c0060320>] (ret_fast_syscall+0x0/0x30)
[ 1316.121978] Code: e12fff1e e10f3000 f10c0080 e3a02001 (e1901f9f)
[ 1316.130920] ---[ end trace 309f7ccdbafe34f9 ]---
<_02_02_example_install/examples/c6runlib/emqbit$

2. Besides this, when I run hello_world_dsp in the 'examples/c6runapp/hello_world', I get

<2_example_install/examples/c6runapp/hello_world$ ./hello_world_dsp
LOCAL_lpmReset () failed. Status = [0x80008008]
C6RUN_IPC_create() failed!

Would somebody help me with understanding the problems?

 

  • Ilkyoung,

    I have used the Beagleboard-xM with Angstrom (using target image and SDK/toolchain generated from Narcissus), using the 2.6.32 kernel, but I have never tried using Ubuntu on the board with the 2.3.38 kernel.  My question is how did you generate the kernel modules and with what toolchain?  Did you do that on some other host machine?

    Unless we can exactly duplicate the software setup you are using, it may be difficult to replicate the issue.  If you can provide more comprehensive instructions for this setup, we may be able to do this.

    One thing I can say is that you should try to upgrade to the latest 0.97.03.03 release to see if behavior changes at all.

    Regards, Daniel

  • Daniel,

     

    Thank you for your prompt responding. I like it.  :-)

     

    1. C6Run version 

    I used C6Run 0.97.02.02. I will try the latest one you recommended. However, it would take some time for me to try.

     

    2. kernel

    I took the kernel source from 'https://code.launchpad.net/~beagleboard-kernel/+junk/2.6-stable'. As far as I understand, this kernel is maintained by Robert Nelson who is doing a lot of works in ubuntu for beagleboard.

     

    3. Toolchain

    I used the toolchain provided by ubuntu package using the following command.

    sudo apt-get install gcc-4.5-arm-linux-gnueabi

     

    4. config.mak

    The following is the contents of my config.mak file

    PLATFORM=beagleboard-xM C6RUN_INSTALL_DIR=/workspace/devel/TI/C6Run_0_97_02_02 IPC=dsplink DSP_REGION_BASE_ADDR=0x9D100000 DSP_REGION_CMEM_SIZE=0x01000000 DSP_REGION_CODE_SIZE=0x00D00000

    5. Build
    I just followed the instructions in INSTALL file and the compilation was successful.
    6. Host information
    I'm running ubuntu 10.10 i386 version on a virtual box in my MacBook Pro(Intel Core i5).
    Is there any other information you think would be helpful?
    Regards,
    Ilkyoung.
  • Daniel,

     

    I built the 0.97.3.3 version code and ran as you recommended. But the result is same.

     

    What I figured out were;

    1. The versions of individual tools used in the 0.97.2.2 and 0.97.3.3 are identical. In the mean while, the problem seems to occur in the lpm package. Since the cgt version is same, the binaries would be same regardless of the C6Run version.

     

    2. When I ran the 'bench_dsp' binary, the first error was complaining that I do not have permission to access the '/dev/cmem' resource. ('CMEM Error: init: Failed to open /dev/cmem: 'Permission denied') So, I changed the permission of my '/dev/cmem' from 600 to 666 and ran the binary again. Now, the error message was same as what I get when I run the 'hello_world_dsp' binary. (LOCAL_lpmReset () failed. Status = [0x80008008])

     

    Do you have any other suggestion I should check/try?

     

    Regards,

     

    Ilkyoung.

  • I wonder if the LPM kernel module is compatible with these later kernel versions.  I doubt anyone within TI has tried it out with a 2.6.38 kernel.

    Regards, Daniel

  • Good morning,

     

    We are currently attempting to use c6accel tool with OMAP3530 in USRPe100 machine (overo based).

    we are using the open embedded build system with a 2.6.38 linux kernel.

    Of course we are experiencing build and run issues, discovering that we should probably use all latest version of ti tools.

    Is there a recommended linux kernel version to use?

    Wewould appreciate to know if anybody managed to get c6accel to run with linux kernel 2.6.38.

    A+

     

  •  

    C6Accel is verified on OMAP3530 EVM using linux kernel 2.6.32 which also part of TI`s linux SDK for the platform. If you are trying to use this on beagle XM, you may need to change the memory map of the dsp server based on the memory available on the device. Also ensure that the CMEM, LPM and DSPLINK modules are built for the platform before you build the C6Accel package.

    We might be able to help if you post the exact error that you see. Can you create a separate post with your query and the error that you see as this post deals with C6Run tool.

    Regards,

    Rahul

  • From where can i get the 2.6.32 kernel sourse for my begarboard xm (angstrom)