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.

Header file of NDK package not getting included

Other Parts Discussed in Thread: AM5748

Hello,

I am using the NDK package for one of my project and there are few functions such as NDK_sendto,NDK_bind which are not getting pointed properly even after including the header file ti/ndk/inc/socketndk.h file and inet.h and the ndk package is also included in the include directories of the project properties.Can you please help me with which header file to be included to avoid the unresolved symbols issue.And is there any function for the initialization of the NDK package.

  • Hello N Anila,

    Please provide more information.  What processor are you using in this design?

    Thank you,

    ~Leonard 

  • Hello,

    The processor used is am5748 and the sdk version is  processor_sdk_rtos_am57xx_08_01_00_09 .The code is being created on the EMAC example project which will run on A15 core.

    Thanks,

    Anila

  • Hello Anila,

    Is the SDK and its dependencies properly installed? All the dependent header files must be part of the package, so can you grep and check?  Alos, if you are building for A15, which is the RTOS SDK being used instead of the Linux SDK?

    Thanks.

  • Hello Praveen,

    The issue regarding the header file inclusion was solved by including those files in the .cfg file.Can anyone please let me the alternative for these functions(used in RTCS rtos) in Ti rtos

    _time_get_elapsed (* ms_time_ptr):- The function always returns elapsed time

    _time_get_hwticks():-Gets the number of hardware ticks since the last tick.

    RTCS_selectset:-Parameter(sockset [in] — Pointer to an array of sockets. count [in] — Number of sockets in the array. timeout [in]) (If timeout is not -1, the function blocks until activity is detected on at least one of the sockets in the set.)

  • Hello Anita,

    Thanks for the additional details.

    Please note that our team will be on year-end time-off and hence there we will be able to look into the query only in the new year. Thanks for understanding.

    Regards.

  • Hello,

    Can someone help me to find an alterative function for RTCS_selectset:-Parameter(sockset [in] — Pointer to an array of sockets. count [in] — Number of sockets in the array. timeout [in]) (If timeout is not -1, the function blocks until activity is detected on at least one of the sockets in the set.)

    and is there are function that is used for the initialization of the NDK package or is there any process related to it

    In the function NDK_setsockopt what would be the level if UDP protocol is to be used.

  • Hello,

    You had not answered our earlier queries:

    -1- Is the SDK and its dependencies properly installed?

    -2- All the dependent header files must be part of the package, so can you grep and check? 

    -3- If you are building for A15, why is the RTOS SDK being used instead of the Linux SDK?

    Thanks.

  • Hello,

    Yes the SDK and its dependencies are properly installed and the previous query about the NDK header files not getting correctly pointed is also solved by adding the header files in the cfg file.The requirement is that LInux is not supposed to be running in the A15 so we have used RTOS SDK.They above functions are some of the functions which are needed to be included in the project can you please suggest the exact function which this description.

  • OK, Thanks for the info.

    Can someone help me to find an alterative function for RTCS_selectset:-Parameter(sockset [in] — Pointer to an array of sockets. count [in] — Number of sockets in the array. timeout [in]) (If timeout is not -1, the function blocks until activity is detected on at least one of the sockets in the set.)

    I see that you have referred "RTCS rtos", we are not aware of this RTOS and you must consult the corresponding vendor for support on this API. We do not all the details on what this function support and hence we cannot comment or suggest on the alternate function on TI RTOS.

    But, we can suggest you to look at the following to see you can find the alternate API needed and the info related NDK_setsockopt  :

    - NDK User guide (Install path  --> <>/processor_sdk_rtos_am57xx_08_01_00_09/ndk_3_61_01_01/docs/ndk/NDK_Users_Guide.html) 

    - NDK API reference guide ( Install path  --> <>/processor_sdk_rtos_am57xx_08_01_00_09/ndk_3_61_01_01/docs/ndk/NDK_API_Reference.html)

    is there are function that is used for the initialization of the NDK package or is there any process related to it

    Suggest referring the NIMU layer chapter in the NDK_Driver_Design_Guide.pdf  (Install path  --> <>/processor_sdk_rtos_am57xx_08_01_00_09/ndk_3_61_01_01/docs/ndk). 

    Thanks.

  • Hello,

    As per the documentation it is provided that for the NDK_setsockopt the option level accepted is SOL_SOCKET, IPPROTO_IP,IPPROTO_TCP but for our requirement we need to set the option level for UDP procotol.So can IPPROTO_UDP be used for as a parameter for this function.

    NDK_setsockopt – Set the Value of a Socket Option Parameter

    Parameters

    • s: Socket
    • level: Option level (SOL_SOCKET, IPPROTO_IP, IPPROTO_TCP)
    • op: Socket option to set
    • pbuf: Pointer to memory buffer
    • bufsize: Size of memory buffer pointed to by pbuf

     

  • As per the documentation it is provided that for the NDK_setsockopt the option level accepted is SOL_SOCKET, IPPROTO_IP,IPPROTO_TCP but for our requirement we need to set the option level for UDP procotol.So can IPPROTO_UDP be used for as a parameter for this function.

    Hi Anila,

    The NDK API reference document clearly says  -- " The NDK_getsockopt() function returns the options associated with a socket. Options may exist at multiple protocol levels; they are always present at the uppermost socket level.When manipulating socket options, the level at which the option resides and the name of the option must be specified. To manipulate options at the socket level, level is specified as SOL_SOCKET. To manipulate options at any other level, the protocol number of the appropriate protocol controlling the option is supplied. In this implementation, only SOL_SOCKET, IPPROTO_IP, and IPPROTO_TCP are supported. "

    Thanks.