TDA4VH-Q1: Main R5 Peripheral Access

Part Number: TDA4VH-Q1
Other Parts Discussed in Thread: SYSCONFIG

I'm trying to get access to the Main R5 for certain peripherals at run time.  The first one I'm starting off with is Timer0.  I couldn't find any good documentation or examples on how this is completed.  Can someone post a simple R5 application that requests Timer0 access?  I'm fairly certain this is done through the sciclient APIs based on everything I've read.

I believe this can also be done through boot software.  If this can be shown, this would also be helpful as well.  I don't think we want this for a long term solution, but potentially could get us going in the short term.  We don't use the TI SysConfig tool.

Thanks,

  • Hello,
    Thank you for your inquiry. **x1076473@ti.com** is currently on leave and will be available on **2026-08-21**.
    Your query will be addressed upon their return. We appreciate your patience and understanding.
    Best regards,
    TI E2E Support Team
    ---
    *This is an automated notification.*

  • Hi Jason,

    We have csl unity test called csl_dmTimer_baremetal_test_app which uses TIMER0 for mcu1_0 core.

    But there is no documentation about the UT tests. 

    Can you please check if this UT test helps.

    Regards,

    Anil

  • Anil,

    Does this work the same for mcu2_0 core (main domain)?  Does it assume nothing is configured in the bootloader?

    Under this folder I only see binary objects.  Where is the source code?

    ti-processor-sdk-rtos-j784s4-evm-09_02_00_05/pdk_j784s4_09_02_00_30/packages/ti/binary/csl_dmTimer_baremetal_test_app

    Thanks,

    Jason

  • Hi Jason,

    Does this work the same for mcu2_0 core (main domain)

    This is not supported for MCU2_0 core.

    Does it assume nothing is configured in the bootloader?

    It is baremetal application using R5 (MCU1_0) core using TIMER0 instance.

    nder this folder I only see binary objects.  Where is the source code?

    Can you please check in the following folder:

    ti-processor-sdk-rtos-j784s4-evm-09_02_00_05/pdk_j784s4_09_02_00_30/packages/ti/csl/test/dmTimerUt/

    Regards,

    Anil

  • Anil,

    According to Table 5-61 DMTIMER Instances DMTIMER[19:0] work on the main domain.  Does that not include MC2_0 core?

    I don't see any SCI function calls in this test app. Does this mean the MCU1_0 already has access to the timer or maybe assumes the bootloader is assigning it?

    I'd like to understand how a main R5 core can get access to a peripheral at runtime (timer is the first example, but I will be doing something similar for a CAN port as well).

    Thanks,

    Jason

  • Hi Jason,

    According to Table 5-62 DMTIMER instances DMTIMER[19:0] work in main domain[MCU2_0] as well.

    But we have examples for TIMER2 and TIMER1 instances not TIMER0 instance.

    I have listed down the examples with supported core along with Timer instance used below.

    Example                                              Supported Core                        Timer Instance used

    osal_baremetal_testapp:                      MCU1_0                                        2

                                                                     MCU2_0                                        1

                               

    csirx_recovery_testapp_freertos          MCU2_0                                         1

    csirx_asf_esm_testapp_freertos          MCU2_0                                         1

    boot_app_ospi                                        MCU1_0                                         1

    and we have "csl_dmTimer_baremetal_test_app" example which uses TIMER0 instance but it is supported on MCU1_0 not on MCU2_0.

    Regards,

    Anil

  • Ansil,

    Where is the top 4 test apps located?  I don't see them under ti-processor-sdk-rtos-j784s4-evm-09_02_00_05.

    Thanks,

    Jason

  • Hi Jason,

    The all 4 test apps are located in ti-processor-sdk-rtos-j784s4-evm-11_02_00_06, let me check which all the examples supported for R5 (MCU2_0) with Timer0 in ti-processor-sdk-rtos-j784s4-evm-09_02_00_05.

    Regards,

    Anil

  • In ti-processor-sdk-rtos-j784s4-evm-09_02_00_05:

    We have the following example lists that supported MCU cores with timer instances used.

    Example                                                Supported Core                        Timer Instance used

    OSAL_Baremetal_TestApp                        MCU1_0                                              2

                                                                            MCU2_0                                              1

    csirx_capture_testapp_freertos                 MCU2_0                                                1

    csirxtx_loopback_testapp_freertos            MCU2_0                                                1

    Note: we renamed osal test app from "OSAL_Baremetal_TestApp" to "osal_baremetal_testapp" in the latest sdk release (11.2)

    Regards,

    Anil

  • Using "find . -name OSAL_Baremetal_TestApp" (or the other two) I do not see these test apps under ti-processor-sdk-rtos-j784s4-evm-09_02_00_05.  I will try looking at ti-processor-sdk-rtos-j784s4-evm-11_02_00_06.

  • find . -name 'osal_baremetal_testapp'
    find . -name 'csirx_capture_testapp_freertos'
    find . -name 'csirxtx_loopback_testapp_freertos'

    These three commands don't show anything under ti-processor-sdk-rtos-j784s4-evm-11_02_00_06.  Are these not the exact names?  

  • Hi Jason,

    The application's name will be found after we have built the applications using build command, we can find these application names in inside the makefile of the respective drivers.

    For example:

    Example name                                                           makefile path

    osal_baremetal_testapp                                          pdk_j784s4_11_02_00_15//packages/ti/osal/test/baremetal/makefile

                                                                                       pdk_j784s4_11_02_00_15/packages/ti/osal/osal_component.mk

    csirx_capture_testapp                                             pdk_j784s4_11_02_00_15/packages/ti/drv/csirx/examples/csirx_capture_test/makefile

                                                                                       pdk_j784s4_11_02_00_15/packages/ti/drv/csirx/csirx_component.mk

    csirx_loopback_testapp                                          pdk_j784s4_11_02_00_15/packages/ti/drv/csirx/examples/csirxtx_loopback_test/makefile

                                                                                       pdk_j784s4_11_02_00_15/packages/ti/drv/csirx/csirx_component.mk 

    So after building the applications from the build folder we will get the binaries in the "pdk_j784s4_11_02_00_15/packages/ti/binary" path.

    Note: For building the application we need to use the following command from the build folder:

    make -s osal_baremetal_testapp CORE=mcu1_0 BOARD=j784s4_evm

    Make sure to use the CORE as required.

    Regards,

    Anil                                           

  • Ok, thanks for pointing for pointing out where they are at and how to build them.  I will take a look at them more and try to get them build.

  • I was able to get osal_baremetal_testapp to build for mcu2_0.  I haven't had time yet to run or inspect the code to see if it answers my questions.