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.

MCSDK C6670 PDK NIMU Eth transport driver bug

Hi,

As part of my work getting an Ethernet bootloader going (in conjunction with: http://e2e.ti.com/support/dsp/c6000_multi-core_dsps/f/639/p/126829/541935.aspx#541935) I'm trying to get a stack shutdown going with a call to NC_NetStop.

I believe I've found a bug in the C6670 PDK 1.0.0.16 NIMU Eth transport driver source code nimu_eth.c.

On lines 228 and 247 of nimu_eth.c (in the EmacStop routine), the code attempts to free a buffers allocated earlier. It does:

    Memory_free(0, (Ptr)*bufaddr, bufLen);

I believe the lines should be:

    Memory_free(0, (Ptr)bufaddr, bufLen);

i.e. without the dereferencing of the pointer bufaddr. (Really, the code should also use Nimu_OsalFree rather than an explicit call to Memory Free).

Also, when the stack is run up again, I am getting errors relating to the Verify_Init routine, which relates to there being buffers on the gTxFreeQHnd queue 736 (found 31 entries), and queue 879 found 1 entry and queue 4095 found 2 entries. Presumably, there should be some QPOP tidy up code in the EmacStop routine for these Queues, but is missing?

Thanks,

Simon.