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.

TDA4VH-Q1: How to compile a driver only on mcu2_0

Part Number: TDA4VH-Q1

Tool/software:

Hi expert

I'm getting the following error:

 undefined              first referenced

  symbol                    in file

 ---------              ----------------

 gBoardSerdesInfo       /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 gCaptPinCfg            /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 read16BitReg           /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 read8BitReg            /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 ti_des960_get_linklock /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 write16BitReg          /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 write8BitReg           /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 

error: unresolved symbols remain

error: errors encountered during linking;

   "/home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/vision_apps/ou

   t/J784S4/C7120/FREERTOS/release/vx_app_rtos_linux_c7x_4.out" not built

 

 undefined              first referenced

  symbol                    in file

 ---------              ----------------

 gBoardSerdesInfo       /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 gCaptPinCfg            /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 read16BitReg           /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 read8BitReg            /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 ti_des960_get_linklock /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 write16BitReg          /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 write8BitReg           /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 

error: unresolved symbols remain

make[2]: [/home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/vision_apps/out/J784S4/C7120/FREERTOS/release/vx_app_rtos_linux_c7x_4.out] Error 1 (ignored)

 

 undefined              first referenced

  symbol                    in file

 ---------              ----------------

 gBoardSerdesInfo       /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 gCaptPinCfg            /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 read16BitReg           /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 read8BitReg            /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 ti_des960_get_linklock /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 write16BitReg          /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 write8BitReg           /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 

error: unresolved symbols remain

error: errors encountered during linking;

   "/home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/vision_apps/ou

   t/J784S4/C7120/FREERTOS/release/vx_app_rtos_linux_c7x_3.out" not built

make[2]: [/home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/vision_apps/out/J784S4/C7120/FREERTOS/release/vx_app_rtos_linux_c7x_3.out] Error 1 (ignored)

error: errors encountered during linking;

   "/home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/vision_apps/ou

   t/J784S4/C7120/FREERTOS/release/vx_app_rtos_linux_c7x_1.out" not built

make[2]: [/home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/vision_apps/out/J784S4/C7120/FREERTOS/release/vx_app_rtos_linux_c7x_1.out] Error 1 (ignored)

 

 undefined              first referenced

  symbol                    in file

 ---------              ----------------

 gBoardSerdesInfo       /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 gCaptPinCfg            /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 read16BitReg           /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 read8BitReg            /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 ti_des960_get_linklock /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 write16BitReg          /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 write8BitReg           /home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/app_utils/lib/J784S4/C7120/FREERTOS/release/app_utils_ipc.lib<app_ipc_rtos_echo_test.obj>

 

error: unresolved symbols remain

error: errors encountered during linking;

   "/home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/vision_apps/ou

   t/J784S4/C7120/FREERTOS/release/vx_app_rtos_linux_c7x_2.out" not built

make[2]: [/home/data/xuefei.yuan/shockwave_a_0902/rtos-sdk-0902-j784s4/vision_apps/out/J784S4/C7120/FREERTOS/release/vx_app_rtos_linux_c7x_2.out] Error 1 (ignored)

Currently I have canceled the compilation of c7x_1~4, which can be compiled.

I'd like to ask how to compile the app_ipc_rtos_echo_test.c driver only in the mcu2_0

Thank you.

  • Hi,

    You can disable the flags in sdk_builder/vision_apps_build_flags.mak and change to BUILD_CPU_C7x_1/2/3/4 ? = no respecitvely under J784s4.

    Additionally in vision_apps/platform/j784s4/rtos/common/app_cfg.h you should disable the MACRO ENABLE_IPC_C7x_1/2/3/4

    The above two changes will completely disable C7x core from vision_apps 

    Please do a clean build of vision_apps after the same using the below commands

    cd ${PSDKRA}/sdk_builder

    make vision_apps_scrub

    make vision_apps

    Regards,

    Nikhil Dasan

  • Yes, this does solve the problem, but I'd like to compile this driver only in the mcu2_0 with some restriction while keeping the c7x cores, which I'm doing now as follows, and it works.

    ifeq ($(TARGET_OS),FREERTOS)

    ifeq ($(TARGET_CPU),R5F)

    CSOURCES    := test.c

    endif

    endif

    At the same time, the entry function of the function adds the restriction of the R5F.

    #if define(R5F)

    test_start();

    #endif


    There are still two questions I would like to confirm:
    1、I found that the TARGET_OS is FREERTOS, TARGET_CPU is R5F, to active only R5F compilation of a certain driver, if only the judgment of the TARGET_CPU is R5F does not take effect, why is that?


    2、I found that the judgment condition of define (R5F) is used in many places, but I can't find the place where the macro definition of R5F is located, where is it defined?

    Thank you.

  • Hi,

    1、I found that the TARGET_OS is FREERTOS, TARGET_CPU is R5F, to active only R5F compilation of a certain driver, if only the judgment of the TARGET_CPU is R5F does not take effect, why is that?

    Does it not build at all for this case? What is the issue that you see when you only have TARGET_CPU as R5F?

    2、I found that the judgment condition of define (R5F) is used in many places, but I can't find the place where the macro definition of R5F is located, where is it defined?

    R5F is extracted from the TARGET_COMBOS in vision_apps/makefile and extracted into TARGET_CPU in sdk_builder/concerto/combo.mak

    Regards,

    Nikhil