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: How to compile the ti.board.aer5f file into mcu2_1

Part Number: TDA4VM

Hi team,

Here's an issue from the customer may need your help:

After modifying the j721E_pinmux_data.c file in the directory ti-processor-SDK-RTOS-j721e-EVM-08_01_00_13/PDK_Jacinto_08_01_00_36/packages/ti/board/src/j721e_E. VM, how to update the generated ti.board.aer5f file to mcu2_1? The customer want to use the latest library file when running mcu2_1.

Could you help check this case? Thanks.

Best Regards,

Cherry

  • Please run "make pdk_libs_allcore" from the build folder, it will rebuild all libraries for all cores.

    Regards,

    Brijesh

  • Hi Brijesh,

    Thanks for your support.

    Is there anything else we need to do on the Mcu2_1 side? For example, only by opening some macros then we can link to this library? Or after compiling and building this library, we can use it without doing anything?

    The customer is running the VX_app_RTOS_Linux_MCU2_1.out file on the development board.

    The following macros are used in PDK_Jacinto_08_01_00_36/packages/ti/board/src/j721e_EVM/board_lld_init.c:

    BOARD_DEBUG_LOG

    When executing source ./vision_apps_init.sh in the /opt/vision_apps directory of the development board, how can we see the print that this macro adds?

    Thanks and regards,

    Cherry

  • Hi Cherry,

    Nothing else required for building. 

    But if you want to use board library from mcu2_1, you might want to add it in the concerto make file, which i am not sure, if it is already available. But once it is added in the linker options, you should be able to call Board API from mcu2_1. Also if board library is printing any statement, then by default it will be redirected to uart.. 

    Regards,

    Brijesh

  • Hi Brijesh,

    But if you want to use board library from mcu2_1, you might want to add it in the concerto make file,

    Which file need they to add it in, vision_apps/platform/j721e/rtos/concerto_r5f_inc.mak file or vision_apps/platform/j721e/rtos/mcu2_1/concerto_mcu2_1_inc.mak file?

    Links to the ti.board.aer5f library have been added to the concerto_R5f_inc.Mak file.

    ifeq ($(TARGET_CPU),R5F)
    
    IDIRS+=$(VISION_APPS_PATH)/platform/$(SOC)/rtos/common
    IDIRS+=$(VISION_APPS_PATH)/kernels/img_proc/include
    IDIRS+=$(VISION_APPS_PATH)/kernels/fileio/include
    IDIRS+=$(VISION_APPS_PATH)/kernels/srv/include
    IDIRS+=$(VISION_APPS_PATH)/kernels/park_assist/include
    IDIRS+=$(PTK_PATH)/include
    IDIRS+=$(VISION_APPS_PATH)/kernels/stereo/include
    IDIRS+=$(IMAGING_PATH)/kernels/include
    IDIRS+=$(IMAGING_PATH)/sensor_drv/include
    
    ifeq ($(RTOS),SYSBIOS)
    	LDIRS += $(PDK_PATH)/packages/ti/osal/lib/tirtos/$(SOC)/r5f/$(TARGET_BUILD)/
    endif
    ifeq ($(RTOS),FREERTOS)
    	LDIRS += $(PDK_PATH)/packages/ti/osal/lib/freertos/$(SOC)/r5f/$(TARGET_BUILD)/
    endif
    LDIRS += $(PDK_PATH)/packages/ti/csl/lib/$(SOC)/r5f/$(TARGET_BUILD)/
    LDIRS += $(PDK_PATH)/packages/ti/board/lib/$(BUILD_PDK_BOARD)/r5f/$(TARGET_BUILD)/
    LDIRS += $(PDK_PATH)/packages/ti/drv/uart/lib/$(SOC)/r5f/$(TARGET_BUILD)/
    LDIRS += $(PDK_PATH)/packages/ti/drv/gpio/lib/$(SOC)/r5f/$(TARGET_BUILD)/
    LDIRS += $(PDK_PATH)/packages/ti/drv/fvid2/lib/$(SOC)/r5f/$(TARGET_BUILD)/
    LDIRS += $(PDK_PATH)/packages/ti/drv/i2c/lib/$(SOC)/r5f/$(TARGET_BUILD)/
    
    
    LDIRS += $(PDK_PATH)/packages/ti/drv/enet/lib/$(SOC)/r5f/$(TARGET_BUILD)/
    LDIRS += $(PDK_PATH)/packages/ti/drv/pm/lib/$(SOC)/r5f/$(TARGET_BUILD)/
    LDIRS += $(PDK_PATH)/packages/ti/transport/timeSync/lib/$(SOC)/r5f/$(TARGET_BUILD)/
    LDIRS += $(PDK_PATH)/packages/ti/transport/timeSync/lib/r5f/$(TARGET_BUILD)/
    
    LDIRS += $(TIOVX_PATH)/lib/$(TARGET_PLATFORM)/$(TARGET_CPU)/$(TARGET_OS)/$(TARGET_BUILD)
    LDIRS += $(IMAGING_PATH)/lib/$(TARGET_PLATFORM)/$(TARGET_CPU)/$(TARGET_OS)/$(TARGET_BUILD)
    
    STATIC_LIBS += app_utils_mem
    STATIC_LIBS += app_utils_console_io
    STATIC_LIBS += app_utils_ipc
    STATIC_LIBS += app_utils_remote_service
    STATIC_LIBS += app_utils_udma
    STATIC_LIBS += app_utils_misc
    STATIC_LIBS += app_utils_sensors
    STATIC_LIBS += app_utils_perf_stats
    STATIC_LIBS += app_utils_iss
    STATIC_LIBS += app_utils_draw2d
    STATIC_LIBS += app_utils_pcie_queue
    STATIC_LIBS += vx_target_kernels_img_proc_r5f
    
    TIOVX_LIBS =
    TIOVX_LIBS += vx_conformance_engine vx_conformance_tests vx_conformance_tests_testmodule
    TIOVX_LIBS += vx_tiovx_tests vx_tutorial vx_utils
    TIOVX_LIBS += vx_framework vx_vxu vx_platform_psdk_j7_rtos vx_kernels_target_utils
    TIOVX_LIBS += vx_kernels_test_kernels_tests vx_kernels_test_kernels
    TIOVX_LIBS += vx_target_kernels_source_sink
    TIOVX_LIBS += vx_kernels_host_utils vx_kernels_openvx_core
    TIOVX_LIBS += vx_kernels_hwa_tests vx_kernels_hwa
    TIOVX_LIBS += vx_target_kernels_vpac_nf vx_target_kernels_vpac_viss
    TIOVX_LIBS += vx_target_kernels_vpac_msc vx_target_kernels_vpac_ldc
    TIOVX_LIBS += vx_target_kernels_dmpac_dof vx_target_kernels_dmpac_sde
    TIOVX_LIBS += vx_target_kernels_display
    TIOVX_LIBS += vx_target_kernels_capture
    TIOVX_LIBS += vx_target_kernels_csitx
    TIOVX_LIBS += vx_target_kernels_j7_arm
    TIOVX_LIBS += vx_target_kernels_display_m2m
    
    IMAGING_LIBS  = ti_imaging_awbalg
    IMAGING_LIBS += ti_imaging_dcc
    IMAGING_LIBS += vx_kernels_imaging
    IMAGING_LIBS += vx_target_kernels_imaging_aewb
    IMAGING_LIBS += ti_imaging_aealg
    IMAGING_LIBS += ti_imaging_sensordrv
    IMAGING_LIBS += ti_imaging_ittsrvr
    
    SYS_STATIC_LIBS += $(TIOVX_LIBS)
    SYS_STATIC_LIBS += $(IMAGING_LIBS)
    
    ADDITIONAL_STATIC_LIBS += ti.board.aer5f
    ADDITIONAL_STATIC_LIBS += ti.drv.uart.aer5f
    ADDITIONAL_STATIC_LIBS += ti.drv.gpio.aer5f
    ADDITIONAL_STATIC_LIBS += ipc.aer5f
    ADDITIONAL_STATIC_LIBS += fvid2.aer5f
    ADDITIONAL_STATIC_LIBS += udma.aer5f
    ADDITIONAL_STATIC_LIBS += ti.drv.i2c.aer5f
    
    ADDITIONAL_STATIC_LIBS += ti.osal.aer5f
    
    ifeq ($(RTOS),FREERTOS)
    	ADDITIONAL_STATIC_LIBS += ti.kernel.freertos.aer5f
    endif
    
    ADDITIONAL_STATIC_LIBS += ti.csl.aer5f
    
    ifeq ($(RTOS),FREERTOS)
    	ADDITIONAL_STATIC_LIBS += ti.csl.init.aer5f
    endif
    
    endif

    Thanks and regards,

    Cherry

  • Hi Cherry,

    If you add this library to vision_apps/platform/j721e/rtos/concerto_r5f_inc.mak concerto file, then it would be available to all R5Fs, but you add it to vision_apps/platform/j721e/rtos/mcu2_1/concerto_mcu2_1_inc.mak, it would be available to only mcu2_1. 

    I see you have added it as additional static library, this should be sufficient, you should not see linker errors for Board APIs.

    Regards,

    Brijesh