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.

About platform configuration

Other Parts Discussed in Thread: TMS320C6678, SYSBIOS

Hi all,

I have found strange behaviour of the platform configuration. I have two identical projects for two different hardware boards. One is TI Evaluation Module for the TMS320C6678 and other is of my customers hardware board for the TMS320C6678.
I have a "standard configuration file"

var Memory = xdc.useModule('xdc.runtime.Memory');
var BIOS = xdc.useModule('ti.sysbios.BIOS');
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
var HeapBuf = xdc.useModule('ti.sysbios.heaps.HeapBuf');
var Log = xdc.useModule('xdc.runtime.Log');
var Task = xdc.useModule('ti.sysbios.knl.Task');
var Cache = xdc.useModule('ti.sysbios.family.c66.Cache');

Task.common$.namedInstance = true;
var Clock = xdc.useModule ('ti.sysbios.knl.Clock');
var Sem = xdc.useModule('ti.sysbios.knl.Semaphore');
var Hwi = xdc.useModule('ti.sysbios.hal.Hwi');
var Ecm = xdc.useModule('ti.sysbios.family.c64p.EventCombiner');
var Diag = xdc.useModule('xdc.runtime.Diags');

var Csl = xdc.useModule('ti.csl.Settings');
Csl.useCSLIntcLib = true;
var Cppi = xdc.loadPackage('ti.drv.cppi');
var Qmss = xdc.loadPackage('ti.drv.qmss');
var Pa = xdc.loadPackage('ti.drv.pa');

var PlatformLib = xdc.loadPackage('ti.platform.evmc6678l');
var NdkTransport = xdc.loadPackage('ti.transport.ndk');
/*
** Sets up the exception log so you can read it with ROV in CCS
*/
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
var Exc = xdc.useModule('ti.sysbios.family.c64p.Exception');
Exc.common$.logger = LoggerBuf.create();
Exc.enablePrint = true; /* prints exception details to the CCS console */

var Global = xdc.useModule('ti.ndk.config.Global');
Global.enableCodeGeneration = false;

var Startup = xdc.useModule('xdc.runtime.Startup');
var System = xdc.useModule('xdc.runtime.System');

var heapMemParams1 = new HeapMem.Params();
heapMemParams1.size = 8192 * 30;
heapMemParams1.sectionName = "systemHeap";
Program.global.heap0 = HeapMem.create(heapMemParams1);

/* Memory map */
Memory.defaultHeapInstance = Program.global.heap0;
Program.sectMap["sharedL2"] = "DDR3";
Program.sectMap["systemHeap"] = "DDR3";
Program.sectMap[".sysmem"] = "DDR3";
Program.sectMap[".text"] = "DDR3";
Program.sectMap[".const"] = "DDR3";
Program.sectMap[".args"] = "DDR3";
Program.sectMap[".cio"] = "DDR3";
Program.sectMap[".far"] = "DDR3";
Program.sectMap[".rodata"] = "DDR3";
Program.sectMap[".neardata"] = "DDR3";
Program.sectMap[".qmss"] = "DDR3";
Program.sectMap[".cppi"] ="DDR3";
Program.sectMap[".init_array"] = "DDR3";
Program.sectMap[".cinit"] = "DDR3";
Program.sectMap[".bss"] = "DDR3";
Program.sectMap[".switch"] = "DDR3";
Program.sectMap[".data"] = "DDR3";
Program.sectMap[".fardata"] = "DDR3";
Program.sectMap[".vecs"] = "DDR3";
Program.sectMap["platform_lib"] = "DDR3";

Program.sectMap[".far:taskStackSection"] = "L2SRAM";
Program.sectMap[".stack"] = "L2SRAM";
Program.sectMap[".nimu_eth_ll2"] = "L2SRAM";
Program.sectMap[".resmgr_memregion"] = {loadSegment: "L2SRAM", loadAlign:128}; /* QMSS descriptors region */
Program.sectMap[".resmgr_handles"] = {loadSegment: "L2SRAM", loadAlign:16}; /* CPPI/QMSS/PA Handles */
Program.sectMap[".resmgr_pa"] = {loadSegment: "L2SRAM", loadAlign:8}; /* PA Memory */
Program.sectMap[".far:IMAGEDATA"] = {loadSegment: "L2SRAM", loadAlign: 8};
Program.sectMap[".far:NDK_OBJMEM"] = {loadSegment: "L2SRAM", loadAlign: 8};
Program.sectMap[".far:NDK_PACKETMEM"] = {loadSegment: "L2SRAM", loadAlign: 128};

/* Required if using System_printf to output on the console */
SysStd = xdc.useModule('xdc.runtime.SysStd');
System.SupportProxy = SysStd;
Startup.lastFxns.$add('&EVM_init');

ar tskNdkStackTest = Task.create("&StackTest");
tskNdkStackTest.stackSize = 0x1400;
tskNdkStackTest.priority = 0x5;

BIOS.taskEnabled = true;

Ecm.eventGroupHwiNum[0] = 7;
Ecm.eventGroupHwiNum[1] = 8;
Ecm.eventGroupHwiNum[2] = 9;
Ecm.eventGroupHwiNum[3] = 10;


If I load this project to TI Evaluation board I have normal action.

I made modification of the configuration file

//Startup.lastFxns.$add('&EVM_init');

and error for customers board is disappear.

[C66xx_0]
Work main Thread

platform_get_info

platform_uart_init

platform_uart_set_baudrate

platform_write_configure

platform_led i =0
platform_led i =1
platform_led i =2
platform_led i =3
res_mgr_init_qmss

res_mgr_init_qmss - Qmss_start
QMSS successfully initialized
CPPI successfully initialized
PA successfully initialized

TCP/IP Stack  Application

PASS successfully initialized
Ethernet subsystem successfully initialized
Ethernet eventId : 48 and vectId (Interrupt) : 7
Registration of the EMAC Successful, waiting for link up ..
Network Added: If-1:192.168.2.100
My -1:192.168.2.100

DaemonNew
hHandle =0

I will attempt find reason for this behaviour. If my attempt will successful I will tell by all. May be it will interesting.
Best regards

     Oltg