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.

NC_NetStart abort

Other Parts Discussed in Thread: SYSBIOS

Hi, I am running a client example in NDK on evmc6678l. The project abort and the console print:

QMSS successfully initialized
CPPI successfully initialized
PA successfully initialized

TCP/IP Stack Example Client
PASS successfully initialized
Ethernet subsystem successfully initialized
Ethernet eventId : 48 and vectId (Interrupt) : 7
Timeout waiting for reply from PA to Pa_addMac command
ti.sysbios.heaps.HeapMem: line 354: assertion failure: A_invalidFree: Invalid free
xdc.runtime.Error.raise: terminating execution

I debuged and found it's abort at NC_NetStart(), as show below:

do
{
rc = NC_NetStart( hCfg, NetworkOpen, NetworkClose, NetworkIPAddr );
} while( rc > 0 );

I never modify the source code which TI provide.

  • It can run when follow steps:

    After loading the programs, run all cores. If it can not work and print

    Timeout waiting for reply from PA to Pa_addMac command
    ti.sysbios.heaps.HeapMem: line 354: assertion failure: A_invalidFree: Invalid free
    xdc.runtime.Error.raise: terminating execution

    in console, then I use the system reset commd to reset the system and restart again.

    Run all cores again, the console dose not print the error mesage. But find that there are only some cores are running, so I run the other cores in hand. It is work!

    But I don't know why?

  • I noticed that this thread never received a response.  Do you have any updates on this issue?

  • Hi, I’m trouble with the same problem, have  you solved it? 

    Can you share your idea with me ?

    Thank you!

  • lei wang4,

    Can you try the following:

    1. pause the core(s) running the code
    2. Do a system reset
    3. Run global default setup from the GEL script
    4. reload and re-run your program
    This will do a SOC reset in-between runs. Without doing an SOC reset, the next program run will take on the previously-initialized hardware settings.
    System Reset:
    Global Default Setup (note that you must have loaded the GEL script beforehand. Refer to "Loading and Setting up the EVM with the Gel File" section in the GSG http://processors.wiki.ti.com/index.php/BIOS_MCSDK_2.0_Getting_Started_Guide#Use_JTAG_to_Load_the_Application)
    Let me know if this works.
    -Ivan
  • Yes!

    I added the GEL file in Target Configuration File for every cores. Then it work!