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.

TDA4VM: FreeRTOS Real-time Object View (ROV)

Other Parts Discussed in Thread: SK-TDA4VM

Hi 

I followed the steps given in the link https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/09_00_00_02/exports/docs/pdk_jacinto_09_00_00_45/docs/userguide/jacinto/developer_notes/freertos_ccs_rov.html

to get the stack usage state for the rtos application .

I loaded the executable in C7x and enabled the ROV by applying the .rov and .xos file to the Products section in ROV and I ran the executable and halted the CPU and connected the debugger. But I am not able to see the freertos section as shown below.

Reagrds,

Madhu

  • Hello,

    ran the executable and halted the CPU and connected the debugger. But I am not able to see the freertos section as shown below.

    What do you see when you open ROV? Are you able to connect ROV to the debug session?

    Thanks

    ki

  • Hi thanks for the reply 
    Yes I am able to connect ROV to the debugger by clicking connect option and after that I am able to see only this screen as shown below

    1. Another question is I tried running a standard udma memcpy application from the PDK version "/ti-processor-sdk-rtos-j721e-evm-09_00_01_01/pdk_jacinto_09_00_01_04/packages/ti/drv/udma/examples/udma_memcpy_test" by adding a RTOS API named uxTaskGetStackHighWaterMark( NULL ); function in FreeRTOS used to determine the amount of remaining stack space that was available to a task.

    Here I added this function at the start and ending of the task and I am getting output like as shown below


    So Here I am getting these values as 2071 and 1974 , How can I interpret this one since I can see like stack size given for this task creation is 32KB 

    Can you explain me this scenario between these values ?

    2. Another concern is if the end value that I am getting is 1974 which is 1 word = 2 bytes therefore 1974 words = 1974 * 2 ( 3,948 bytes ) from stack space have been utilized then how can I validate exactly this much byte is used either from ROV or do we have any other options to validate the water mark funciton output?

    Regards,

    Madhu

  • Hi thanks for the reply 
    Yes I am able to connect ROV to the debugger by clicking connect option and after that I am able to see only this screen as shown below

    The lack of content in ROV is due to the environment not being properly configured. Please make sure you follow the steps in 9.2.3.

    For your other questions, the device experts can help best. I will bring this thread to their attention.

  • Hi MadhuBala,

    Can you confirm you are using SK-TDA4VM? How are you building the applications? ROV capability requires a syscfg_c.rov.xs file which is generated when building RTOS PDK applications.

    The RTOS applications such as the UDMA memcpy test will not run on the SK-TDA4VM and will require a J721E EVM.

    Thanks,

    Neehar

  • Hi Neehar

    Thanks for the reply

    I am building and running the udma memcpy test application on J721e EVM only and the build command used is

    "make -j8 -s CORE=c7x_1 BOARD=j721e_evm BUILD_PROFILE=debug udma_memcpy_testapp_freertos" 

    I am able to get the syscfg_c.rov.xs file from the file path "ti-processor-sdk-rtos-j721e-evm-09_00_01_01\pdk_jacinto_09_00_01_04\packages\ti\kernel\freertos\rov\syscfg_c.rov.xs" 

    Additionally If possible can you please once again give the steps here like how to configure the ROV and connect it to the debugger (XDS110 Debug probe in my case) , and when to load the executable and halt the CPU ?

    Thanks,

    Madhu

  • Hi Madhu,

    Thanks for this information. I will update the thread information to reflect J721E EVM.

    Additionally If possible can you please once again give the steps here like how to configure the ROV and connect it to the debugger (XDS110 Debug probe in my case) , and when to load the executable and halt the CPU ?

    It seems like you have followed the steps to setup up the ROV.

    After running the GEL scripts, you can load the .xe71 binary for the udma_memcpy testapp. Then you can halt the CPU at any point after the OS has started. It may help to place breakpoints where you want to analyze the stack usage of the application. 

    If you are still having issues, can you try testing with an application running on R5?

    Thanks,

    Neehar

  • Hi Madhu,

    Following up to see if this issue is still open.

    Thanks,

    Neehar