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.
Tool/software:
Dear Sir or Madam,
I am encountering an issue while debugging a project using the TMS320F28374S microcontroller. During debugging, I receive the following error message:
"No source available for '_system_post_cinit() at D:\LLCDebugProblem\EVDP-UA603W0001_LLC_S0.01T25\Debug\EVDP-UA603W0001_LLC_S0.01T25.out:{3} 0x3fe493{4}'"
The compiler version used is TIv20.2.5.LTS. We have taken the following actions to address this issue:
Additionally, debugging can proceed into the main function; however, after initializing the EEPROM, just before initializing the Flash, the debug process encounters an error and cannot continue further.
I need assistance with the following:
Currently, we speculate that our company's encryption software might be causing file parsing errors, and the newer compiler version (TIv22.6.1LTS) may have implemented isolation measures for these files. However, we do not have concrete evidence to support this theory. We sincerely request assistance from TI engineers.
Additionally, I have attached relevant screenshots of the settings for your reference.
Best Regards,
Cheng Yulong
Hi Cheng,
Thank you for reaching out. I think your screenshots didn't get included in the original message, can you try reattaching them?
What version of CCS are you using for your testing?
There have been quite a number of compiler updates in between TIv20.2.5.LTS and TIv22.6.1LTS. To help narrow down the change that is causing the debugger to work correctly, are you able to test other compiler versions? It may be good to test 21.6.0 as that will help to narrow down the exact compiler change.
Also in your linker command file, are you using the generic linker command files from the C2000WARE SDK or are you using a custom .cmd? If custom, can you review the linker file to make sure that you are correctly allocating the memory for the device? You may want to compare with the generic .cmd files from the SDK to make sure
Regards,
Peter
Hi Peter,
Here are the screenshots related to the debug configuration:
the CCS version is:12.6.0.
TIv21.6.0.LTS still has this issue, so the scope has been narrowed down to between versions TIv21.6.0.LTS and TIv22.6.1LTS.
Here is the cmd configuration file:
MEMORY { PAGE 0: /* Program Memory */ PAGE 1: /* Data Memory */ ACCESSPROTECTION : origin = 0x0005F4C0, length = 0x00000040 ADCA : origin = 0x00007400, length = 0x00000080 ADCB : origin = 0x00007480, length = 0x00000080 ADCC : origin = 0x00007500, length = 0x00000080 ADCD : origin = 0x00007580, length = 0x00000080 ADCARESULT : origin = 0x00000B00, length = 0x00000018 ADCBRESULT : origin = 0x00000B20, length = 0x00000018 ADCCRESULT : origin = 0x00000B40, length = 0x00000018 ADCDRESULT : origin = 0x00000B60, length = 0x00000018 ANALOGSUBSYS : origin = 0x0005D180, length = 0x00000048 CANA : origin = 0x00048000, length = 0x00000200 CANB : origin = 0x0004A000, length = 0x00000200 CLA1 : origin = 0x00001400, length = 0x00000080 CLB1DATAEXCH : origin = 0x00003200, length = 0x00000200 CLB2DATAEXCH : origin = 0x00003600, length = 0x00000200 CLB3DATAEXCH : origin = 0x00003A00, length = 0x00000200 CLB4DATAEXCH : origin = 0x00003E00, length = 0x00000200 CLB1LOGICCFG : origin = 0x00003000, length = 0x00000052 CLB2LOGICCFG : origin = 0x00003400, length = 0x00000052 CLB3LOGICCFG : origin = 0x00003800, length = 0x00000052 CLB4LOGICCFG : origin = 0x00003C00, length = 0x00000052 CLB1LOGICCTRL : origin = 0x00003100, length = 0x00000040 CLB2LOGICCTRL : origin = 0x00003500, length = 0x00000040 CLB3LOGICCTRL : origin = 0x00003900, length = 0x00000040 CLB4LOGICCTRL : origin = 0x00003D00, length = 0x00000040 CLBXBAR : origin = 0x00007A40, length = 0x00000040 CLKCFG : origin = 0x0005D200, length = 0x00000032 CMPSS1 : origin = 0x00005C80, length = 0x00000020 CMPSS2 : origin = 0x00005CA0, length = 0x00000020 CMPSS3 : origin = 0x00005CC0, length = 0x00000020 CMPSS4 : origin = 0x00005CE0, length = 0x00000020 CMPSS5 : origin = 0x00005D00, length = 0x00000020 CMPSS6 : origin = 0x00005D20, length = 0x00000020 CMPSS7 : origin = 0x00005D40, length = 0x00000020 CMPSS8 : origin = 0x00005D60, length = 0x00000020 CPUTIMER0 : origin = 0x00000C00, length = 0x00000008 CPUTIMER1 : origin = 0x00000C08, length = 0x00000008 CPUTIMER2 : origin = 0x00000C10, length = 0x00000008 CPUSYS : origin = 0x0005D300, length = 0x00000082 DACA : origin = 0x00005C00, length = 0x00000008 DACB : origin = 0x00005C10, length = 0x00000008 DACC : origin = 0x00005C20, length = 0x00000008 DCSMCOMMON : origin = 0x0005F070, length = 0x00000008 DCSMZ1 : origin = 0x0005F000, length = 0x00000024 DCSMZ2 : origin = 0x0005F040, length = 0x00000024 DEVCFG : origin = 0x0005D000, length = 0x0000012E DMACLASRCSEL : origin = 0x00007980, length = 0x0000001A DMA : origin = 0x00001000, length = 0x00000200 ECAP1 : origin = 0x00005000, length = 0x00000020 ECAP2 : origin = 0x00005020, length = 0x00000020 ECAP3 : origin = 0x00005040, length = 0x00000020 ECAP4 : origin = 0x00005060, length = 0x00000020 ECAP5 : origin = 0x00005080, length = 0x00000020 ECAP6 : origin = 0x000050A0, length = 0x00000020 EMIF1CONFIG : origin = 0x0005F480, length = 0x00000020 EMIF2CONFIG : origin = 0x0005F4A0, length = 0x00000020 EMIF1 : origin = 0x00047000, length = 0x00000070 EMIF2 : origin = 0x00047800, length = 0x00000070 EPWM1 : origin = 0x00004000, length = 0x00000100 EPWM2 : origin = 0x00004100, length = 0x00000100 EPWM3 : origin = 0x00004200, length = 0x00000100 EPWM4 : origin = 0x00004300, length = 0x00000100 EPWM5 : origin = 0x00004400, length = 0x00000100 EPWM6 : origin = 0x00004500, length = 0x00000100 EPWM7 : origin = 0x00004600, length = 0x00000100 EPWM8 : origin = 0x00004700, length = 0x00000100 EPWM9 : origin = 0x00004800, length = 0x00000100 EPWM10 : origin = 0x00004900, length = 0x00000100 EPWM11 : origin = 0x00004A00, length = 0x00000100 EPWM12 : origin = 0x00004B00, length = 0x00000100 EPWMXBAR : origin = 0x00007A00, length = 0x00000040 EQEP1 : origin = 0x00005100, length = 0x00000022 EQEP2 : origin = 0x00005140, length = 0x00000022 EQEP3 : origin = 0x00005180, length = 0x00000022 FLASH0CTRL : origin = 0x0005F800, length = 0x00000182 FLASH1CTRL : origin = 0x0005FC00, length = 0x00000182 FLASH0ECC : origin = 0x0005FB00, length = 0x00000028 FLASH1ECC : origin = 0x0005FF00, length = 0x00000028 FLASHPUMPSEMAPHORE : origin = 0x00050024, length = 0x00000002 GPIOCTRL : origin = 0x00007C00, length = 0x00000180 GPIODATA : origin = 0x00007F00, length = 0x00000030 I2CA : origin = 0x00007300, length = 0x00000022 I2CB : origin = 0x00007340, length = 0x00000022 INPUTXBAR : origin = 0x00007900, length = 0x00000020 MEMORYERROR : origin = 0x0005F500, length = 0x00000040 MEMCFG : origin = 0x0005F400, length = 0x00000080 MCBSPA : origin = 0x00006000, length = 0x00000024 MCBSPB : origin = 0x00006040, length = 0x00000024 NMIINTRUPT : origin = 0x00007060, length = 0x00000007 OUTPUTXBAR : origin = 0x00007A80, length = 0x00000040 PIECTRL : origin = 0x00000CE0, length = 0x0000001A PIEVECTTABLE : origin = 0x00000D00, length = 0x00000200 ROMPREFETCH : origin = 0x0005E608, length = 0x00000002 ROMWAITSTATE : origin = 0x0005F540, length = 0x00000002 SCIA : origin = 0x00007200, length = 0x00000010 SCIB : origin = 0x00007210, length = 0x00000010 SCIC : origin = 0x00007220, length = 0x00000010 SCID : origin = 0x00007230, length = 0x00000010 SDFM1 : origin = 0x00005E00, length = 0x00000080 SDFM2 : origin = 0x00005E80, length = 0x00000080 SPIA : origin = 0x00006100, length = 0x00000010 SPIB : origin = 0x00006110, length = 0x00000010 SPIC : origin = 0x00006120, length = 0x00000010 SYNCSOC : origin = 0x00007940, length = 0x00000006 UPP : origin = 0x00006200, length = 0x00000048 WD : origin = 0x00007000, length = 0x0000002B XBAR : origin = 0x00007920, length = 0x00000020 XINT : origin = 0x00007070, length = 0x0000000B } SECTIONS { /*** PIE Vect Table and Boot ROM Variables Structures ***/ UNION run = PIEVECTTABLE { PieVectTableFile GROUP { EmuKeyVar EmuBModeVar EmuBootPinsVar FlashCallbackVar FlashScalingVar } } AccessProtectionRegsFile : > ACCESSPROTECTION, type=NOINIT AdcaRegsFile : > ADCA, type=NOINIT AdcbRegsFile : > ADCB, type=NOINIT AdccRegsFile : > ADCC, type=NOINIT AdcdRegsFile : > ADCD, type=NOINIT AdcaResultRegsFile : > ADCARESULT, type=NOINIT AdcbResultRegsFile : > ADCBRESULT, type=NOINIT AdccResultRegsFile : > ADCCRESULT, type=NOINIT AdcdResultRegsFile : > ADCDRESULT, type=NOINIT AnalogSubsysRegsFile : > ANALOGSUBSYS, type=NOINIT CanaRegsFile : > CANA, type=NOINIT CanbRegsFile : > CANB, type=NOINIT Cla1RegsFile : > CLA1, type=NOINIT Clb1DataExchRegsFile : > CLB1DATAEXCH, type=NOINIT Clb2DataExchRegsFile : > CLB2DATAEXCH, type=NOINIT Clb3DataExchRegsFile : > CLB3DATAEXCH, type=NOINIT Clb4DataExchRegsFile : > CLB4DATAEXCH, type=NOINIT Clb1LogicCfgRegsFile : > CLB1LOGICCFG, type=NOINIT Clb2LogicCfgRegsFile : > CLB2LOGICCFG, type=NOINIT Clb3LogicCfgRegsFile : > CLB3LOGICCFG, type=NOINIT Clb4LogicCfgRegsFile : > CLB4LOGICCFG, type=NOINIT Clb1LogicCtrlRegsFile : > CLB1LOGICCTRL, type=NOINIT Clb2LogicCtrlRegsFile : > CLB2LOGICCTRL, type=NOINIT Clb3LogicCtrlRegsFile : > CLB3LOGICCTRL, type=NOINIT Clb4LogicCtrlRegsFile : > CLB4LOGICCTRL, type=NOINIT ClbXbarRegsFile : > CLBXBAR, type=NOINIT ClkCfgRegsFile : > CLKCFG, type=NOINIT Cmpss1RegsFile : > CMPSS1, type=NOINIT Cmpss2RegsFile : > CMPSS2, type=NOINIT Cmpss3RegsFile : > CMPSS3, type=NOINIT Cmpss4RegsFile : > CMPSS4, type=NOINIT Cmpss5RegsFile : > CMPSS5, type=NOINIT Cmpss6RegsFile : > CMPSS6, type=NOINIT Cmpss7RegsFile : > CMPSS7, type=NOINIT Cmpss8RegsFile : > CMPSS8, type=NOINIT CpuTimer0RegsFile : > CPUTIMER0, type=NOINIT CpuTimer1RegsFile : > CPUTIMER1, type=NOINIT CpuTimer2RegsFile : > CPUTIMER2, type=NOINIT CpuSysRegsFile : > CPUSYS, type=NOINIT DacaRegsFile : > DACA, type=NOINIT DacbRegsFile : > DACB, type=NOINIT DaccRegsFile : > DACC, type=NOINIT DcsmCommonRegsFile : > DCSMCOMMON, type=NOINIT DcsmZ1RegsFile : > DCSMZ1, type=NOINIT DcsmZ2RegsFile : > DCSMZ2, type=NOINIT DevCfgRegsFile : > DEVCFG, type=NOINIT DmaClaSrcSelRegsFile : > DMACLASRCSEL, type=NOINIT DmaRegsFile : > DMA, type=NOINIT ECap1RegsFile : > ECAP1, type=NOINIT ECap2RegsFile : > ECAP2, type=NOINIT ECap3RegsFile : > ECAP3, type=NOINIT ECap4RegsFile : > ECAP4, type=NOINIT ECap5RegsFile : > ECAP5, type=NOINIT ECap6RegsFile : > ECAP6, type=NOINIT Emif1ConfigRegsFile : > EMIF1CONFIG, type=NOINIT Emif2ConfigRegsFile : > EMIF2CONFIG, type=NOINIT Emif1RegsFile : > EMIF1, type=NOINIT Emif2RegsFile : > EMIF2, type=NOINIT EPwm1RegsFile : > EPWM1, type=NOINIT EPwm2RegsFile : > EPWM2, type=NOINIT EPwm3RegsFile : > EPWM3, type=NOINIT EPwm4RegsFile : > EPWM4, type=NOINIT EPwm5RegsFile : > EPWM5, type=NOINIT EPwm6RegsFile : > EPWM6, type=NOINIT EPwm7RegsFile : > EPWM7, type=NOINIT EPwm8RegsFile : > EPWM8, type=NOINIT EPwm9RegsFile : > EPWM9, type=NOINIT EPwm10RegsFile : > EPWM10, type=NOINIT EPwm11RegsFile : > EPWM11, type=NOINIT EPwm12RegsFile : > EPWM12, type=NOINIT EPwmXbarRegsFile : > EPWMXBAR, type=NOINIT EQep1RegsFile : > EQEP1, type=NOINIT EQep2RegsFile : > EQEP2, type=NOINIT EQep3RegsFile : > EQEP3, type=NOINIT Flash0CtrlRegsFile : > FLASH0CTRL, type=NOINIT Flash1CtrlRegsFile : > FLASH1CTRL, type=NOINIT Flash0EccRegsFile : > FLASH0ECC, type=NOINIT Flash1EccRegsFile : > FLASH1ECC, type=NOINIT FlashPumpSemaphoreRegsFile : > FLASHPUMPSEMAPHORE, type=NOINIT GpioCtrlRegsFile : > GPIOCTRL, type=NOINIT GpioDataRegsFile : > GPIODATA, type=NOINIT I2caRegsFile : > I2CA, type=NOINIT I2cbRegsFile : > I2CB, type=NOINIT InputXbarRegsFile : > INPUTXBAR, type=NOINIT MemoryErrorRegsFile : > MEMORYERROR, type=NOINIT MemCfgRegsFile : > MEMCFG, type=NOINIT McbspaRegsFile : > MCBSPA, type=NOINIT McbspbRegsFile : > MCBSPB, type=NOINIT NmiIntruptRegsFile : > NMIINTRUPT, type=NOINIT OutputXbarRegsFile : > OUTPUTXBAR, type=NOINIT PieCtrlRegsFile : > PIECTRL, type=NOINIT PieVectTableFile : > PIEVECTTABLE, type=NOINIT RomPrefetchRegsFile : > ROMPREFETCH, type=NOINIT RomWaitStateRegsFile : > ROMWAITSTATE, type=NOINIT SciaRegsFile : > SCIA, type=NOINIT ScibRegsFile : > SCIB, type=NOINIT ScicRegsFile : > SCIC, type=NOINIT ScidRegsFile : > SCID, type=NOINIT Sdfm1RegsFile : > SDFM1, type=NOINIT Sdfm2RegsFile : > SDFM2, type=NOINIT SpiaRegsFile : > SPIA, type=NOINIT SpibRegsFile : > SPIB, type=NOINIT SpicRegsFile : > SPIC, type=NOINIT SyncSocRegsFile : > SYNCSOC, type=NOINIT UppRegsFile : > UPP, type=NOINIT WdRegsFile : > WD, type=NOINIT XbarRegsFile : > XBAR, type=NOINIT XintRegsFile : > XINT, type=NOINIT } /* //=========================================================================== // End of file. //=========================================================================== */
Regards,
Cheng Yulong
I have further narrowed down the scope of the compilation issue. There is a problem with TIv21.6.1.LTS, but TIv21.12.0.LTS works fine. Could you please help me identify the differences between these two compiler versions? Thank you very much.
Hi Cheng,
Please see the following change log for the TIv21.12.0.LTS: https://software-dl.ti.com/codegen/esd/cgt_public_sw/C2000/21.12.0.STS/README.html
I don't see anything that could possibly lead to the debug not working in previous revisions of the CGT so I'm thinking it's also likely to do with the CCS version you are using is a newer CCS and tested with the newer compiler versions.
Regards,
Peter
Hi Peter,
I have conducted the same experiment using Code Composer Studio 11.2.0 and Code Composer Studio 12.8.1, alongside Code Composer Studio 12.6.0, using the same codebase but in three different workspaces. The experimental results show that the debug issue occurs when using the TIv21.6.1.LTS compiler version, whereas no such debug issues are present when using the TIv21.12.0.LTS compiler version. Therefore, I believe that this issue is not related to the CCS version but is solely associated with the compiler version.
Please continue to help me identify the cause. Thank you very much.
Regards,
Cheng
Hi Cheng,
I reviewed the changelog for the compiler version and I don't see any specific reference to a compiler change that result in a different debug behavior. I will reach back out to the compiler team to provide insight once they have returned from the holiday break
Regards,
Peter
Hi Cheng,
Hope you have a happy new year. I am reaching out to our compiler to team to find out more information about the TIv21.12.0.LTS compiler version to get additional information
Regards,
Peter
Hello,
I have brought this thread to the attention of the compiler experts. Due to the current holiday time, it may be a few days before an update is available.
Thank you
ki
"No source available for '_system_post_cinit() at D:\LLCDebugProblem\EVDP-UA603W0001_LLC_S0.01T25\Debug\EVDP-UA603W0001_LLC_S0.01T25.out:{3} 0x3fe493{4}'"
For an explanation of the message, please see:
The real issue is why you are getting stuck there. I don't have an answer for that one.
Hi Cheng,
I discussed with our compilers team. They mentioned that there is no change in the specific compiler version which necessarily addresses the issue you are facing. Different compiler versions put functions and data in memory in different places, so it cannot be deterministically understood the exact issue you are seeing just because of the compiler version
Comment I received from the team is that there is likely some system issue/exception occurring in your code which needs to be resolved and can only be noticed in your code with older compiler version
Regards,
Peter
Hi Peter and Ki:
I have reviewed the link you sent me, and indeed, the issue was resolved after switching the compiler version. However, I have a concern that I need your help to confirm: since this problem only manifests during debugging, with compilation and linking proceeding normally, I am worried about whether there might be any issues with the generated binary files.
Regards,
Cheng
Hi Cheng,
Understood, like mentioned previously, there may be some system-level issue in your code which is independent of the compiler and would require testing/evaluation of project files. This causes the source to not be found on different compiler versions. Since this is not necessarily a result of the compiler but of the codebase, then there is a chance that future changes in the compiler may reintroduce this error to your project depending on where compiler will be allocating parts of the code in memory. For the compiler versions you have tested successfully, if there is no error thrown during debugging, I don't consider there is a issue necessarily with the binary file but still there could be error with code
Regards,
Peter