Greetings,
I'm working on an OMAPL138 on a Critical Link evaluation board. We are eventually using a custom board with kernel version 3.2 so IPC 3 is not an option for us. I am having issues loading any program to the DSP core. I've attached the log result. I am not familiar with the details of the log, as far as I can tell I feel like it may be an issue with the Syslink build? The current program I am loading is the typical SYSBIOS example built into CCS6 for the C6000. I have made no changes other than the config.bld and updating module settings in app.cfg to support Syslink.
Attached files:
"arm_ipc.c" - the program I am running on the ARM core running a modified Angstrom Linux with v3.2 kernel
"screen.log" - log from the TRACE output when trying to load a program to the DSP core
"config.bld.cfg" - platform build (added .cfg to allow for upload via forum post)
"app.cfg" - ARM project configuration
I've appended the following to boot arguments for the system:
mem=32M@0xc0000000 mem=64M@0xc4000000
Environment/versions:
BIOS 6.34.02.18
IPC 1.25.00.04
Syslink 2.21.03.11
TI_CGT_C6000 7.4.1
XDC 3.24.05.48
Any help would be appreciated.
Thank you
Hitesh Patel
DLOAD: ELF: ELF DLOAD: ELF file header entry point: c3018800 Unable to handle kernel NULL pointer dereference at virtual address 00000008 pgd = c5374000 [00000008] *pgd=c45a6831, *pte=00000000, *ppte=00000000 Internal error: Oops: 17 [#1] PREEMPT Modules linked in: syslink(O) CPU: 0 Tainted: G O (3.2.0+ #3) PC is at dload_dynamic_segment+0x450/0x498 [syslink] LR is at dload_dynamic_segment+0x420/0x498 [syslink] pc : [<bf00d6c8>] lr : [<bf00d698>] psr: 60000013 sp : c441dd50 ip : 00000000 fp : 00000010 r10: 00000001 r9 : 00000000 r8 : 00000000 r7 : 003861ac r6 : c6fbd000 r5 : 00385fc0 r4 : 00000000 r3 : c6fbd00c r2 : 00000000 r1 : c6fb90f9 r0 : c6fbd000 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user Control: 0005317f Table: c5374000 DAC: 00000015 Process arm_ipc (pid: 2416, stack limit = 0xc441c270) Stack: (0xc441dd50 to 0xc441e000) dd40: 03046000 bf0e1bd4 003860b0 000000ed dd60: 0000000f 00000011 00000006 00000000 00000001 c6fb1000 c6f9f000 00000000 dd80: 00000000 00000000 c441df00 bf00e244 00000000 ffffffff 00000000 c441de0c dda0: c6faf000 bf000000 00000000 00000000 c441df00 c0081a3c 00000000 c00801b4 ddc0: ffffffff 00000000 00000024 c6fb3000 03046000 03046000 c6fa3000 00000000 dde0: c6f9f000 00000000 00000000 00000000 c441df00 bf00aec8 c6faf000 00000000 de00: 00000000 00000000 c5308840 c6fb1000 c6ae3000 c6f9f000 00000000 00000000 de20: c6faf000 00000000 c6faf000 c441df00 00000000 bf0024b8 00000000 c441df00 de40: 00000000 00000000 00000000 c6fa9000 00000000 00000000 00000000 c441df00 de60: 00000000 bf004a48 00000000 c441df00 00000000 00000000 c6faf000 be820c88 de80: 00000000 c441c000 c6faf000 c0009524 c441c000 00000000 be820c64 bf009158 dea0: 00000000 c441df00 be820c24 c008e9cc c441decc c530d2e0 be820cd4 c00722a8 dec0: c5374000 c5810ee0 c56c8098 00000000 c441df78 00000001 c5328000 ffffff9c dee0: c0009524 c6fa9000 c6fa9000 00013430 00000017 00000000 00000000 00000000 df00: 00000000 00000012 c5328005 00000000 c5186920 be820c88 be820c88 c51d77d8 df20: c0009524 c0091018 c5208ae0 00000000 40000093 00101002 c50f7d68 00000000 df40: 00000000 00000000 40000093 00000003 40000013 c007e5f0 be820c3c c008f72c df60: 00000001 00000002 c5186920 c5186920 be820c88 c020e0a2 00000003 c0009524 df80: c441c000 c00910d0 00000003 00000000 be820c88 00000000 00000000 000087a0 dfa0: 00000036 c00093a0 00000000 00000000 00000003 c020e0a2 be820c88 00000003 dfc0: 00000000 00000000 000087a0 00000036 00000000 00000000 400fc000 be820c64 dfe0: 00000000 be820c40 0000da44 4031b19c 60000010 00000003 00000000 00000000 [<bf00d6c8>] (dload_dynamic_segment+0x450/0x498 [syslink]) from [<bf00e244>] (DLOAD_load+0x7c/0xa38 [syslink]) [<bf00e244>] (DLOAD_load+0x7c/0xa38 [syslink]) from [<bf00aec8>] (ElfLoader_load+0x268/0x3a8 [syslink]) [<bf00aec8>] (ElfLoader_load+0x268/0x3a8 [syslink]) from [<bf0024b8>] (Loader_load+0xe8/0x164 [syslink]) [<bf0024b8>] (Loader_load+0xe8/0x164 [syslink]) from [<bf004a48>] (ProcMgr_load+0x21c/0x318 [syslink]) [<bf004a48>] (ProcMgr_load+0x21c/0x318 [syslink]) from [<bf009158>] (ProcMgrDrv_ioctl+0xa8c/0x1a14 [syslink]) [<bf009158>] (ProcMgrDrv_ioctl+0xa8c/0x1a14 [syslink]) from [<c0091018>] (do_vfs_ioctl+0x500/0x584) [<c0091018>] (do_vfs_ioctl+0x500/0x584) from [<c00910d0>] (sys_ioctl+0x34/0x54) [<c00910d0>] (sys_ioctl+0x34/0x54) from [<c00093a0>] (ret_fast_syscall+0x0/0x2c) Code: e1a02006 eb000a59 ea000004 e2844001 (e5993008) ---[ end trace cf59961d94384aa3 ]--- Segmentation fault root@mityomapl138:~# shtudown[J[J[J[J[J[Jutdown -r now Stopping Avahi mDNS/DNS-SD Stack... Stopping D-Bus System Message Bus... Stopping Serial Getty onStopping Getty on tty1... Stopping Login Service... Stopping Timestamping service... Starting Save Random Seed... Starting Store Sound Card State... Stopped Avahi mDNS/DNS-SD Stack [[1;32m OK [0m] Stopped Login Service [[1;32m OK [0m] Stopped D-Bus System Message Bus [[1;32m OK [0m] Stopped Serial Getty on ttyS1 [[1;32m OK [0m] Stopped Getty on tty1 [[1;32m OK [0m] Started Save Random Seed [[1;32m OK [0m] Failed to start Store Sound Card State [[1;31mFAILED[0m] See 'systemctl status alsa-store.service' for details. Stopped Timestamping service [[1;32m OK [0m] Stopping Permit User Sessions... Stopped Permit User Sessions [[1;32m OK [0m] Stopping Apply Kernel Variables... Stopped Apply Kernel Variables [[1;32m OK [0m] Starting Notify Audit System and Update UTMP about System Shutdown... Stopping Remount API VFS... Stopped Remount API VFS [[1;32m OK [0m] Stopping Temporary Directory... Stopping Remount Root FS... Stopped Remount Root FS [[1;32m OK [0m] Sending SIGTERM to remaining processes... Sending SIGKILL to remaining processes... Unmounting file systems. Unmounted /sys/kernel/debug. Unmounted /dev/mqueue. Disabling swaps. Detaching loop devices. Detaching DM devices. USB 1.1 clocked from USB 2.0 PHY -- can't power it down Restarting system. OMAP-L138/AM-1808/AM-1810 initialization passed! Configuring 128MB mDDR Booting TI User Boot Loader UBL Version: 1.65:2.28.1 BuiltJul 11 2011 12:49:53 UBL Flashtype: SPI Starting SPI Memory Copy... Valid magicnum, 0x55424CBB, found at offset 0x00010000. DONE Jumping to entry point at 0xC1080000. U-Boot 2009.11-00001-g47e55bd (Mar 13 2015 - 15:58:45) I2C: ready DRAM: 128 MB NAND: 256 MiB MMC: davinci: 0 In: serial Out: serial Err: serial ARM Clock : 300000000 Hz DDR Clock : 150000000 Hz EMIFA CLock : 100000000 Hz DSP Clock : 300000000 Hz ASYNC3 Clock : 150000000 Hz Enet config : 2 MMC 0 Enable : 1 Resetting ethernet phy Net: Ethernet PHY: GENERIC @ 0x03 [0x8] Hit any key to stop autoboot: 3 0 U-Boot > U-Boot > printenv bootargs bootargs=mem=32M@0xc0000000 mem=64M@0xc4000000 console=ttyS1,115200n8 mtdparts=nand:128M(rootfs),-(userfs) root=/dev/mtdblock0 rw,noatime rootfstype=jffs2 U-Boot >
/* ============================================================================ Name : arm_ipc.c Author : Hitesh Patel Version : Copyright : Description : ============================================================================ */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ti/syslink/Std.h> #include <ti/syslink/SysLink.h> #include <ti/syslink/ProcMgr.h> #include <ti/syslink/utils/OsalPrint.h> int main(void) { UInt16 procId; UInt32 fileID; Int status; ProcMgr_Handle handle = NULL; status = 0; procId = 0; status = ProcMgr_open (&handle, procId); Osal_printf("\nOpened\n"); if(status>=0){ status = ProcMgr_load(handle,"/home/root/ipc_dsp.out",0,NULL,NULL,&fileID); } Osal_printf("\nStatus: %d\n",status); return EXIT_SUCCESS; }