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.

J721EXSOMXEVM: CCS and SBL Applications

Part Number: J721EXSOMXEVM


Tool/software:

Hello All.

I have few questions regarding CCS and SBL for the MCU Domain Cortex R5F core.

1. I was successfully able to setup and run the launch.js script in CCS. But when I try to run the Hello World example, on the mcu1_0 core, I see the debug assembly code, but the printf output is not seen anywhere. I tried the MCU UART terminal, as well as the CIO Console (used fflush(stdout) too). Where is the output and debug information being redirected?

2. I want to run a baremetal app on the main R5F core on the MCU domain i.e., mcu1_0. I am not very clear about the SCIClient app that needs to be run on the main R5F core. Should I include SCI with my application, or is it already initialized by the SBL? (do note that i am running a baremetal app i.e., non-os)

3. Can the application developed on CCS IDE be used for SBL baremetal, or how to port the CCS app to baremetal SBL?

Thanks in advance.

  • Hi Arun,

    Responses will be delayed owing to the Good Friday/Easter holidays across TI.

    regards

    Suman

  • Hi Arun,

    I want to run a baremetal app on the main R5F core on the MCU domain i.e., mcu1_0

    Is this a custom board or TI EVM? Can you please double check and ensure you have connected the UART to MCU UART? Additionally, can you please double check the UART settings in CCS and ensure they match these specifications?

    I want to run a baremetal app on the main R5F core on the MCU domain i.e., mcu1_0

    Can you confirm you want to run the application on MCU1_0? This is a MCU R5F core and not main R5F core so I want to clarify which core you want to run on.

    Should I include SCI with my application, or is it already initialized by the SBL? (do note that i am running a baremetal app i.e., non-os)

    If indeed you are running for MCU1_0, regardless of if the application is FreeRTOS or baremetal, if you are using the makefile from the PDK, it will automatically handle loading the sciserver appimage onto the core.

    Can the application developed on CCS IDE be used for SBL baremetal, or how to port the CCS app to baremetal SBL?

    If you do develop using the CCS IDE, we do not support building the project or application within CCS. You will have to build the application within the PDK specifically for baremetal environment.

    Thanks,

    Neehar

  • Hi Arun,

    I want to run a baremetal app on the main R5F core on the MCU domain i.e., mcu1_0.

    You can run baremetal application on MAIN R5F cores, but not on the MCU R5F in an integrated product.

    The SciServer that needs to run on MCU1_0 to provide Device Management services needs an RTOS.

    regards

    Suman

  • Hi Suman. 

    If indeed you are running for MCU1_0, regardless of if the application is FreeRTOS or baremetal, if you are using the makefile from the PDK, it will automatically handle loading the sciserver appimage onto the core.

    and

    You can run baremetal application on MAIN R5F cores, but not on the MCU R5F in an integrated product.

    Im now confused as to whether I can run baremetal app on mcu1_0 or not? I am targeting the MCU domain specifically and the application I will be using is baremetal.

    Thank you.

  • Hi Neehar.

    Is this a custom board or TI EVM? Can you please double check and ensure you have connected the UART to MCU UART? Additionally, can you please double check the UART settings in CCS and ensure they match these specifications?

    It is TI EVM - J721E_EVM. Yes, I have connected MCU UART. The UART settings are correct, I have verified.

    Can you confirm you want to run the application on MCU1_0? This is a MCU R5F core and not main R5F core so I want to clarify which core you want to run on.

    Yes, I want to run the application on MCU1_0 (MCU Domain R5F Core 0), i meant "main" as in core 0 of MCU R5F Subsystem, my bad on that.

    Thank you.

  • Hi Arun,

    Im now confused as to whether I can run baremetal app on mcu1_0 or not? I am targeting the MCU domain specifically and the application I will be using is baremetal.

    To clarify, if you are running a basic or simple baremetal binary, for example for unit testing, that runs on mcu1_0 it is okay. 

    For more complex, multi-core applications and for your final application in production, you will not be able to run baremetal code on mcu1_0 or else you will run into issues with the Device Management which handles the following:

    • System Controller Interface Server (SCISERVER)

    • Resource Management (RM) Services

    • Power Management (PM) Services

    You can take a look at more information here. Sciserver, from above list, is required for majority of functionality of our device and requires an RTOS to run. 

    It is TI EVM - J721E_EVM. Yes, I have connected MCU UART. The UART settings are correct, I have verified.

    Have you tested with any of the example applications or binaries within the PDK? Are you able to see logs from any of those? There are many examples which show how to setup the UART for logs on the EVM.

    Thanks,

    Neehar

  • Hi Neehar.

    Thanks for the response, and i pretty much got an idea about running my application.

    I no longer require CCS as I was successfully able to execute a custom hello_world app on mcu1_0 using PDK and its makefile infra following this FAQ [FAQ] TDA4VM: How to build custom examples in PDK - Processors forum - Processors - TI E2E support forums.

    Will create a new thread if I face any issues building my app in PDK.

    Thank you!