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.

Problem modifying NDK helloWorld example

Hi

I have successfully built and run the NDK helloWorld example on a TCI6638 device using MCSDK 3.00.00.11 and NDK 2.22.2.16.

I need to adapt the example for our application and have therefore made some modifications, specifically in the QMSS initialisation functions.  Now when I run the modified example I see:

Starting the network

PASS successfully initialized

Ethernet subsystem successfully initialized

Ethernet eventId : 48 and vectId (Interrupt) : 7

Found an entry in PA response queue with swinfo0 = 0x11112222, expected 0x11111111

Add_MACAddress failed

Error: Unable to register the EMAC

Please can you suggest what might cause the error, or suggest a means of debugging it?

With best regards

David

  • David,

    Do you get info showing QMSS and CPPI succesfully intialized in your log? We have some code change in the nimu driver code for the Add_MACAddress function (C:\ti\pdk_keystone2_1_00_00_11\packages\ti\transport\ndk\nimu\src\nimu_rth.c), can you try if this can resolve your issue?

    Regards, Eric

    4544.nimu_eth.c

     

     

  • Hi Eric

    Yes, QMSS and CPPI initialisation worked fine.  I already have the NIMU patch.  The problem remains.

    David

  • David,

    What did you change in QMSS intialization? Can you show the code?

    Regards, Eric

     

  • Hi Eric

    Sorry for my delay in replying. Let me ignore your last question for now.  The error I get is:

    "Found an entry in PA response queue with swinfo0 = 0x11112222, expected 0x11111111"

    I have checked that the version of nimu_eth.c you attached is the same as I have.

    At line 2168 of nimu_eth.c there is:

    if (pHostDesc->softwareInfo0 != cmdReplyInfo.replyId)

    Now, the sw info value is set to 0x11112222 at line 2110:

    Cppi_setSoftwareInfo (Cppi_DescType_HOST, (Cppi_Desc *)pHostDesc, (uint8_t *)myswinfo);

    but the value of cmdReplyInfo.replyId is set to 0x11111111 at line 2079.

    So that 'if' statement (at line 2168) will fail and give the error that I see.

    This looks like a definite bug (at line 2168).

    Please will you investigate this urgently?

    BR

    David

  • David,

    No, the code is correct. I checked 2.1.2.6 nimu_eth.c and PA example code on how to add MAC address. The myswinfo is not related to pHostDesc->softwareInfo0. In your case, queue is messed up. Please send me the code how you changed QMSS/CPPI intialization in NDK, if possible.

    Regards, Eric 

  • Hi Eric

    Thanks for your reply. It turned out that our QMSS initialisation code was initialising a region for the NDK descriptors with descriptor size 64, when 128 is required. So it was our initialisation code at fault.

    Thanks again

    David