Other Parts Discussed in Thread: OMAPL138, SYSBIOS, OMAP-L138
I am in the process of upgrading an application for OMAPL138 from DSPBIOS 5_41_11_38 to SYSBIOS 6_41_01_36.
My upgraded application executes fine when loading into RAM with the debugger.
When booting from flash DSP never makes it to main. I tracked down that it was failing during the Hwi_Module_startup in \ti\sybios\family\c64p\Hwi.c when writing to the register ISTP
/* Initialize the vector table pointer, ISTP */
ISTP = (UInt) Hwi_module->vectorTableBase;
My application begins execution with the secure kernel enabled.
For DSPBIOS my .tcf configuration file contains the line
bios.GBL.ENABLE_SK = 1;
I did not have anything in my SYSBIOS .cfg to enable the secure kernel. So I added the line
var BIOS = xdc.useModule('ti.sysbios.BIOS');
BIOS.useSK = 1;
Upon doing this I got an unresolved symbol ti_sysbios_family_c64p_Hwi_int0 in \ti\sybios\family\c64p\Hwi_asm.s62
I modified this this file to use _ti_sysbios_family_c64p_Hwi_int0 instead of ti_sysbios_family_c64p_Hwi_int0 and symbol is now resolved. (It was missing the _ )
Now I am getting warnings about relocation of Hwi_int2 and Hwi_int1. Reference below. I do not find much documentation on secure kernel with SYSBIOS. My questions are:
1. Is SYSBIOS compatible with the secure kernel?
2. If so, are there more entries other than BIOS.useSK =1; required in the .cfg?
warning:
relocation type is static base-relative, but references symbol
"_ti_sysbios_family_c64p_Hwi_int2" defined in section ".vecs"; references to
section ".vecs" are not relative to any static base, so this relocation
cannot be performed (type = 'R_C60BASE' (80), file =
"C:/ngcc_sysbios_dev/Application/boot/stage3/cfg/pjt/Release/package/cfg/xgc
onf_p674.src\sysbios\sysbios.a674<BIOS.obj>", offset = 0x00000008, section =
".text:_ti_sysbios_family_c64p_Hwi_Module_startup__E")
"C:/CCS_v6_0_1/bios_6_41_01_36/packages/ti/sysbios/family/c64p/Hwi.c", line 127:
warning:
relocation type is static base-relative, but references symbol
"_ti_sysbios_family_c64p_Hwi_int1" defined in section ".vecs"; references to
section ".vecs" are not relative to any static base, so this relocation
cannot be performed (type = 'R_C60BASE' (80), file =
"C:/ngcc_sysbios_dev/Application/boot/stage3/cfg/pjt/Release/package/cfg/xgc
onf_p674.src\sysbios\sysbios.a674<BIOS.obj>", offset = 0x00000048, section =
".text:_ti_sysbios_family_c64p_Hwi_Module_startup__E")
warning: output file "./Debug/stage3.out" cannot be loaded and run on a target
system
'Linking Binary...'