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.

TI Chip Support Library will not load using CCSv4

I am using a DM6446 EVM.  I downloaded the Chip Support Library (CSL) and Board Support Library (BSL) from the Spectrum Digital web site.  SD tells me that the CSL was developed by TI and SD developed the BSL.  All the CSL example software that utilize interrupts in their processing will not load under CCSv4.  I always get the error shown below when I try to load any .out file that uses interrupts (emac.out for example).  I tried compiling and linking my own .out and tried the .out downloaded with the CSL.  Both produce this error.  SD recreated the error with a different DM6446 EVM and their own CCSv4 and suggested I resolve the issue with TI.  They also tried it with CSv3.3 and it loaded and ran correctly.  Lastly, I downloaded the app note on migrating a CCSv3.3 project to CCSv4 and had no issues in that process.  It did note 2 unresolved linker options (-ml and --tranpolines).

I don't have the $$ to buy another CCS version at this point.  ANy help would be greatly appreciated as I am completely stuck at the moment.

ARM9_0: File Loader: Data verification failed at address 0x00000001 Please verify target memory and memory map.

Error found during data verification.

Ensure the linker command file matches the memory map.

 

 

  • Hi Bob,

    I see the same behavior. On CCSv3.3 it loads fine. In v4 it does not (with the verification error). I will file a bug for this. In the mean time you can turn of verification when you load. This will allow you to load the program. You can turn this off from the Debugger Options when in a debug session ('Tools -> Debugger Options -> Generic Debugger Options'  under 'Verification Options').

    Thanks

    ki

  • I have filed a bug for this issue. The tracking number is: SDSCM00042245

    Thanks

    ki

  • Thanks for the prompt response.  I hope we can get to the bottom of the issue.  It's been delaying me for some time now. 

    I have tried your suggestion already  I turned off verification and was able to load the program but it did not run.  I'm assuming that the program did not load correctly in the first place (hence the verification error) so I guess I was not surprised it did not run.  Did you try to run it?

    Bob

  • Yes I ran the program. I got some output in the console "01  Testing EMAC loopback..." etc. Did you not get any output?

  • Yes but that is all I get.  The program is hung up in an initialization routine.  I assume it's waiting for an interrupt but I'm guessing.  Spectrum Digital was able to get it to run completely (under CCSv3.3) however they did not forward the console output.

    Did you use an ethernet loopback cable when you ran the test?

  • Actually that is all the output I got also. But the result was identical for me on 3.3 and 4.

  • Interesting.  if you get a chance, you can try the interrupt and timer examples in the BSL.  They use interrupts too.  I could not get those to run either.

    Thanks for your help so far.  I've been fitghting this issue for a while now.  I'm glad a report has been filed and it might get some exposure.

     

    bob

  • I re-ran the CSL's interrupt and timer examples (with data verification OFF) and both would not run.  Or should I say run but produce no reslts.  It appears that address 0 is unloadable producing the data verification error.  Address 0 is the execution address on a reset so the software does not execute properly from that point.  It appears to be set at a branch to the BootROM. 

    When running the timer and interrupt tests, the processor never gets to the program's main entry point.  In both cases, the processor appears to get lost in the BootROM.