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.

CCS/TMS320F2812: Rebuilding converted project fails.

Part Number: TMS320F2812

Tool/software: Code Composer Studio

Hello, 


I am trying to build an old code compose project using CCS 6.

Compiler is 20.2.1.LTS

DSPBIOS is 5.42.2.10

I have converted the cdb to tcf using:

c:\ti\bios_5_42_02_10\xdctools>cdb2tcf.exe xxx.cdb
Original seed file: c:/ti/bios_5_42_02_10/packages/ti/bios/config/update/4.90.280/c28xx.cdb
Loading application CDB file
Device name: 2812
Catalog: ti.catalog.c2800
Generating CSL files
Unloading the application CDB file
Loading original seed: c:/ti/bios_5_42_02_10/packages/ti/bios/config/update/4.90.280/c28xx.cdb
Finding user changes
Loading new seed file
New seed: c:/ti/bios_5_42_02_10/packages/ti/bios/config/cdb/c28xx.cdb
Applying changes
Saving original xxx.cdb.Thu_yyy_2020
Creating TCF file: c:/ti/bios_5_42_02_10/xdctools/f2812_flash.tcf
Tconf search path information is required for running the generated tcf file.
The search path info for the Tconf.exe command line has been saved in
tcfopts.dat.

When building I get:

'Building file: ../f2812_flash.tcf'
'Invoking: TConf'
"C:/ti/bios_5_42_02_10/xdctools/tconf" -b -Dconfig.importPath="C:/ti/bios_5_42_02_10/packages;" "../f2812_flash.tcf"

subdir_rules.mk:35: recipe for target 'build-206747775' failed

js: Reference constraint violation: LOG::SS_log.bufseg.MemberTest(L0SARAM) failed


Any inputs would be nice.

Also I can only text-edit tcf files, it cannot open config.
Same for example projects, they however build fine.

  • Hi Morten,

    Can you attach the .tcf file to this thread?

    Todd

  • I cannot see the attach option - only "Insert File" , is that what you want?  FYI - I am using an Edge Browser.

    Update: Same for Chrome.
    Update 2: rename file to .log and drag-drop seems to work.

    environment["ti.bios.oldMemoryNames"] = true;
    
    /* loading the generic platform */
    var params = {};
    params.clockRate = 150;
    params.deviceName = "2812";
    params.catalogName = "ti.catalog.c2800";
    params.regs = {};
    params.regs.pllcr = 0xa;
    utils.loadPlatform("ti.platforms.generic", params);
    
    
    /* enabling DSP/BIOS components */
    bios.GBL.ENABLEINST = true;
    bios.MEM.NOMEMORYHEAPS = false;
    bios.RTDX.ENABLERTDX = true;
    bios.HST.HOSTLINKTYPE = "RTDX";
    bios.TSK.ENABLETSK = true;
    bios.GBL.ENABLEALLTRC = true;
    
    bios.M0SARAM.createHeap = true;
    bios.M0SARAM.heapSize = 0x0200;
    
    bios.L0SARAM.createHeap = true;
    bios.L0SARAM.heapSize = 0x0200;
    
    bios.MEM.BIOSOBJSEG = prog.get("L0SARAM");
    bios.MEM.MALLOCSEG = prog.get("L0SARAM");
    bios.TSK.STACKSEG = prog.get("L0SARAM");
    
    
    /* applying user changes */
    bios.BEGIN_FLASH = bios.MEM.create("BEGIN_FLASH");
    
    bios.BEGIN_FLASH.comment = "Boot to Flash target address";
    
    bios.BEGIN_FLASH.base = 0x3f7ff6;
    
    bios.BEGIN_FLASH.len = 0x2;
    
    bios.BEGIN_FLASH.createHeap = 0;
    
    bios.BEGIN_FLASH.space = "code";
    
    bios.BEGIN_H0 = bios.MEM.create("BEGIN_H0");
    
    bios.BEGIN_H0.comment = "Boot to H0 target address";
    
    bios.BEGIN_H0.base = 0x3f8000;
    
    bios.BEGIN_H0.len = 0x2;
    
    bios.BEGIN_H0.createHeap = 0;
    
    bios.BEGIN_H0.space = "code";
    
    bios.CSM_RSVD = bios.MEM.create("CSM_RSVD");
    
    bios.CSM_RSVD.comment = "Reserved by CSM";
    
    bios.CSM_RSVD.base = 0x3f7f80;
    
    bios.CSM_RSVD.len = 0x76;
    
    bios.CSM_RSVD.createHeap = 0;
    
    bios.CSM_RSVD.space = "code";
    
    bios.FLASH_AB = bios.MEM.create("FLASH_AB");
    
    bios.FLASH_AB.base = 0x3f4000;
    
    bios.FLASH_AB.len = 0x3f80;
    
    bios.FLASH_AB.createHeap = 0;
    
    bios.FLASH_AB.space = "code";
    
    bios.FLASH_CD = bios.MEM.create("FLASH_CD");
    
    bios.FLASH_CD.base = 0x3ec000;
    
    bios.FLASH_CD.len = 0x8000;
    
    bios.FLASH_CD.createHeap = 0;
    
    bios.FLASH_CD.space = "code";
    
    bios.FLASH_EF = bios.MEM.create("FLASH_EF");
    
    bios.FLASH_EF.base = 0x3e4000;
    
    bios.FLASH_EF.len = 0x8000;
    
    bios.FLASH_EF.createHeap = 0;
    
    bios.FLASH_EF.space = "code";
    
    bios.FLASH_GH = bios.MEM.create("FLASH_GH");
    
    bios.FLASH_GH.base = 0x3dc000;
    
    bios.FLASH_GH.len = 0x8000;
    
    bios.FLASH_GH.createHeap = 0;
    
    bios.FLASH_GH.space = "code";
    
    bios.FLASH_IJ = bios.MEM.create("FLASH_IJ");
    
    bios.FLASH_IJ.base = 0x3d8000;
    
    bios.FLASH_IJ.len = 0x4000;
    
    bios.FLASH_IJ.createHeap = 0;
    
    bios.FLASH_IJ.space = "code";
    
    bios.PWDS = bios.MEM.create("PWDS");
    
    bios.PWDS.comment = "CSM PWDS in Flash";
    
    bios.PWDS.base = 0x3f7ff8;
    
    bios.PWDS.len = 0x8;
    
    bios.PWDS.createHeap = 0;
    
    bios.PWDS.space = "code";
    
    bios.ZONE1 = bios.MEM.create("ZONE1");
    
    bios.ZONE1.comment = "external memory zone 1";
    
    bios.ZONE1.base = 0x4000;
    
    bios.ZONE1.len = 0x2000;
    
    bios.ZONE1.createHeap = 0;
    
    bios.ZONE2 = bios.MEM.create("ZONE2");
    
    bios.ZONE2.comment = "external memory zone 2";
    
    bios.ZONE2.base = 0x80000;
    
    bios.ZONE2.len = 0x80000;
    
    bios.ZONE2.createHeap = 0;
    
    bios.L1SARAM = bios.MEM.create("L1SARAM");
    
    bios.L1SARAM.base = 0x9000;
    
    bios.L1SARAM.len = 0x1000;
    
    bios.FPGA_MEM = bios.MEM.create("FPGA_MEM");
    
    bios.FPGA_MEM.base = 0x2000;
    
    bios.FPGA_MEM.len = 0x100;
    
    bios.FPGA_MEM.createHeap = 0;
    
    bios.PRD0_10ms = bios.PRD.create("PRD0_10ms");
    
    bios.PRD1_100ms = bios.PRD.create("PRD1_100ms");
    
    bios.PRD2_500ms = bios.PRD.create("PRD2_500ms");
    
    bios.PRD5_1ms = bios.PRD.create("PRD5_1ms");
    
    bios.SWI2_LowSpeedTx = bios.SWI.create("SWI2_LowSpeedTx");
    
    bios.SWI1_TLD_RxTx = bios.SWI.create("SWI1_TLD_RxTx");
    
    bios.SWI3_UpdateDebugDAC = bios.SWI.create("SWI3_UpdateDebugDAC");
    
    bios.SWI4_GetTripPimps = bios.SWI.create("SWI4_GetTripPimps");
    
    bios.SWI5_GetBoardPimp = bios.SWI.create("SWI5_GetBoardPimp");
    
    bios.SWI_Rx_LS_Data = bios.SWI.create("SWI_Rx_LS_Data");
    
    bios.SS_log = bios.LOG.create("SS_log");
    
    bios.RTA_fromHost.bufSeg = prog.get("L1SARAM");
    
    bios.RTA_toHost.bufSeg = prog.get("L1SARAM");
    
    bios.LOG_system.bufSeg = prog.get("L1SARAM");
    
    bios.MEM.ARGSSEG = prog.get("L1SARAM");
    
    bios.MEM.BIOSSEG = prog.get("FLASH_CD");
    
    bios.MEM.ENABLELOADADDR = 1;
    
    bios.MEM.LOADBIOSSEG = prog.get("FLASH_CD");
    
    bios.MEM.SYSINITSEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADSYSINITSEG = prog.get("FLASH_CD");
    
    bios.MEM.GBLINITSEG = prog.get("FLASH_CD");
    
    bios.MEM.TRCDATASEG = prog.get("L1SARAM");
    
    bios.MEM.LOADGBLINITSEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADTRCDATASEG = prog.get("FLASH_CD");
    
    bios.MEM.SYSDATASEG = prog.get("L1SARAM");
    
    bios.MEM.OBJSEG = prog.get("L1SARAM");
    
    bios.MEM.BIOSOBJSEG = prog.get("L1SARAM");
    
    bios.MEM.MALLOCSEG = prog.get("L1SARAM");
    
    bios.MEM.TEXTSEG = prog.get("FLASH_AB");
    
    bios.MEM.LOADTEXTSEG = prog.get("FLASH_AB");
    
    bios.MEM.SWITCHSEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADSWITCHSEG = prog.get("FLASH_CD");
    
    bios.MEM.BSSSEG = prog.get("L1SARAM");
    
    bios.MEM.EBSSSEG = prog.get("L1SARAM");
    
    bios.MEM.CINITSEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADCINITSEG = prog.get("FLASH_CD");
    
    bios.MEM.PINITSEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADPINITSEG = prog.get("FLASH_CD");
    
    bios.MEM.ECONSTSEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADECONSTSEG = prog.get("FLASH_CD");
    
    bios.MEM.CONSTSEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADCONSTSEG = prog.get("FLASH_CD");
    
    bios.MEM.DATASEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADDATASEG = prog.get("FLASH_CD");
    
    bios.MEM.CIOSEG = prog.get("M0SARAM");
    
    bios.MEM.SYSMEMSEG = prog.get("M0SARAM");
    
    bios.MEM.HWISEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADHWISEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADHWIVECSEG = prog.get("FLASH_CD");
    
    bios.MEM.RTDXTEXTSEG = prog.get("FLASH_CD");
    
    bios.MEM.LOADRTDXTEXTSEG = prog.get("FLASH_CD");
    
    bios.GBL.CALLUSERINITFXN = 1;
    
    bios.H0SARAM.base = 0x3f8002;
    
    bios.H0SARAM.len = 0x1ffe;
    
    bios.BUF.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.PRD.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.PRD0_10ms.period = 0xa;
    
    bios.PRD0_10ms.fxn = prog.extern("PRD_10ms");
    
    bios.PRD0_10ms.order = 1;
    
    bios.PRD1_100ms.period = 0x64;
    
    bios.PRD1_100ms.fxn = prog.extern("PRD_100ms");
    
    bios.PRD1_100ms.order = 0x2;
    
    bios.PRD2_500ms.period = 0x1f4;
    
    bios.PRD2_500ms.fxn = prog.extern("PRD_500ms");
    
    bios.PRD2_500ms.order = 0x3;
    
    bios.PRD5_1ms.period = 1;
    
    bios.PRD5_1ms.fxn = prog.extern("PRD_1ms");
    
    bios.PRD5_1ms.order = 0x4;
    
    bios.TSK.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.TSK.STACKSEG = prog.get("L1SARAM");
    
    bios.IDL.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.LNK_dataPump.order = 1;
    
    bios.RTA_dispatcher.order = 0x2;
    
    bios.IDL_cpuLoad.order = 0x3;
    
    bios.SS_log.bufSeg = prog.get("L0SARAM");
    
    bios.PIP.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.SEM.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.MBX.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.QUE.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.LCK.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.SIO.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.SYS.TRACESEG = prog.get("L1SARAM");
    
    bios.PIE_INT1_1.fxn = prog.extern("PDPINTA_ISR");
    
    bios.PIE_INT1_1.useDispatcher = 1;
    
    bios.PIE_INT1_4.fxn = prog.extern("XINT1_ISR");
    
    bios.PIE_INT1_4.useDispatcher = 1;
    
    bios.PIE_INT1_5.fxn = prog.extern("XINT2_ISR");
    
    bios.PIE_INT1_5.useDispatcher = 1;
    
    bios.PIE_INT1_6.fxn = prog.extern("ADCINT_ISR");
    
    bios.PIE_INT1_6.useDispatcher = 1;
    
    bios.PIE_INT2_6.fxn = prog.extern("T1UFINT_ISR");
    
    bios.PIE_INT2_6.useDispatcher = 1;
    
    bios.PIE_INT5_5.fxn = prog.extern("CAPTUREFREQ_ISR");
    
    bios.PIE_INT5_5.useDispatcher = 1;
    
    bios.GBL.USERINITFXN = prog.extern("UserInit");
    
    bios.CLK.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.PRD_clock.order = 1;
    
    bios.RTDX.RTDXDATASEG = prog.get("L1SARAM");
    
    bios.HWI_INT13.fxn = prog.extern("XINT13_ISR");
    
    bios.HWI_INT13.useDispatcher = 1;
    
    bios.SWI.OBJMEMSEG = prog.get("L1SARAM");
    
    bios.PRD_swi.priority = 0x2;
    
    bios.SWI2_LowSpeedTx.fxn = prog.extern("Tx_LS_Data");
    
    bios.SWI2_LowSpeedTx.priority = 0x3;
    
    bios.SWI1_TLD_RxTx.fxn = prog.extern("TLD_SPI_RxTx");
    
    bios.SWI1_TLD_RxTx.priority = 0x4;
    
    bios.SWI3_UpdateDebugDAC.fxn = prog.extern("UpdateDebugDAC");
    
    bios.SWI3_UpdateDebugDAC.priority = 0x2;
    
    bios.SWI4_GetTripPimps.fxn = prog.extern("GetTripPimps");
    
    bios.SWI5_GetBoardPimp.fxn = prog.extern("GetBoardPimp");
    
    bios.SWI_Rx_LS_Data.comment = "<Reading LS data from FIFO and calling StateMAchine>";
    
    bios.SWI_Rx_LS_Data.fxn = prog.extern("Rx_LS_Data");
    
    bios.SWI_Rx_LS_Data.priority = 0x3;
    
    bios.M0SARAM.base = 0x40;
    
    bios.M0SARAM.len = 0x3c0;
    
    bios.M0SARAM.createHeap = 0;
    
    bios.HST.OBJMEMSEG = prog.get("M0SARAM");
    
    bios.LOG.OBJMEMSEG = prog.get("M0SARAM");
    
    bios.STS.OBJMEMSEG = prog.get("M0SARAM");
    
    bios.DIO.OBJMEMSEG = prog.get("M0SARAM");
    
    bios.DHL.OBJMEMSEG = prog.get("M0SARAM");
    
    bios.L0SARAM.len = 0x1000;
    
    bios.L0SARAM.createHeap = 0;
    
    bios.L0SARAM.space = "code";
    
    bios.M0SARAM.base = 0x400;
    
    bios.M0SARAM.len = 0x400;
    
    if (bios.MEM.LOADTRCDATASEG == prog.get("FLASH")) {
        bios.MEM.LOADTRCDATASEG = prog.get("L0SARAM");
    }
    
    if (bios.MEM.SYSMEMSEG == prog.get("FLASH")) {
        bios.MEM.SYSMEMSEG = prog.get("L0SARAM");
    }
    
    bios.FLASH.destroy();
    
    // !GRAPHICAL_CONFIG_TOOL_SCRIPT_INSERT_POINT!
    
    if (config.hasReportedError == false) {
        prog.gen();
    }
    

  • Hi Morten,

    It looks like the conversion tool had some issues. This is a very old tool and we don't support it any longer.

    I'd recommend you import an example from bios_5_42_02_10 (and confirm you can open the .tcf and build the application). Then do a diff between the attached .tcf and the example's .tcf file. You can then correct the converted .tcf using hte example .tcf as a guide. For example, it should be LSARAM and not L0SARAM.

    Todd