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.

Linux/TDA2: TDA2xx make opencx

Part Number: TDA2


Tool/software: Linux

when i 

make linux_clean
make linux
make linux_install
make -s -j depend
make -s -j opencx

In the last step encountered an error:

# Final executable /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/vision_sdk/bin/tda2xx-evm//apps.out !!!
#
/bin/sh: 1: cd: can't cd to /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/../ti_components/os_tools/linux/kernel/dsptop/debugss_module/debugss-mod
cp: cannot stat ‘/home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/../ti_components/os_tools/linux/kernel/dsptop/debugss_module/debugss-mod/debugss_kmodule.ko’: No such file or directory
make[6]: *** [linux_app_install] Error 1
make[5]: *** [app_linux_install] Error 2
make[4]: *** [apps_hlos] Error 2
make[3]: *** [apps] Error 2
make[2]: *** [vision_sdk] Error 2
make[1]: *** [_vision_sdk_opencx] Error 2
make: *** [opencx] Error 2

But i have no such directory /ti_components/os_tools/linux/kernel/dsptop/debugss_module/debugss-mod .

Where can I get this directory?

  • Has anyone encountered this problem?
    I'm stuck here.
    Ask for help.
  • Hi Xie Baojian,
    Follow Linux UG - section 2.4.2.2.4 & clone OpenCL supported package

    Regards
    Surya
  • Hi Surya,

    Thank you for your answer, I have solved the compile problem, but i run the chains_vipSingleCamOpenCLFrameCopySgxDisplay failed, the info is :
    [HOST] [HOST ] 89.268193 s:
    [HOST] [IPU2 ] 89.268346 s: CHAINS: Sensor create in progress
    [HOST] [IPU2 ] 89.268895 s: VIDEO_SENSOR: INST0 : I2C1 : I2C Addr = 0x30
    [HOST] [IPU2 ] 89.365796 s: VIDEO_SENSOR: VIP 0: DRV ID 1203 (I2C ADDR 0x30): a635:0000:7fa2
    [HOST] [IPU2 ] 89.366101 s: CHAINS: Sensor create ... DONE !!!
    [HOST] [IPU2 ] 89.381199 s: CAPTURE: Create in progress !!!
    [HOST] [IPU2 ] 89.381595 s: CAPTURE: VIP1 Slice0 PortA capture mode is [ 8-bit] !!!
    [HOST] [HOST ] 89.503233 s: IPC_IN_0 : Create in progress !!!
    [HOST] [IPU2 ] 89.502135 s: CAPTURE: Create Done !!!
    [HOST] [IPU2 ] 89.502623 s: IPC_OUT_0 : Create in progress !!!
    [HOST] [IPU2 ] 89.502958 s: IPC_OUT_0 : Create Done !!!
    ASSERT (chains_vipSingleCamOpenCLFrameCopySgxDisplay_priv.c|chains_vipSingleCamOpenCLFrameCopySgxDisplay_Create|165)
    [HOST] [HOST ] 89.503812 s: IPC_IN_0 : Create Done !!!
    [HOST] [HOST ] 89.503904 s: ALG: ERROR: No alg create function specified (algId = 6) !!!

    Can you give me more help?thank you very much

    Regards,
    Xie Baojian
  • Hi Xie Baojian,
    Is there any modification in UC ?

    Refer below link if there are any change in UC
    e2e.ti.com/.../694186

    Regards
    Surya
  • Hi Surya,

    Which file do you mean by UC? i think i have no modification in this file.

    Regards
    Xie Baojian
  • Hi Xie Baojian,
    Could you please share "appLiblist_a15_0.txt" file under "vision_sdk\binaries\apps\tda2xx_evm_linux_opencx" ?
    Also share cfg.mk & uc_cfg.mk file under "vision_sdk\apps\configs\tda2xx_evm_linux_opencx"

    Regards
    Surya
  • Hi Surya,

    appLiblist_a15_0.txt:
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/utils.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/network_utils.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_gate.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_null.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_merge.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_dup.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_sgxFrmcpy.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_algorithm.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_ipcOut.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_select.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_ipcIn.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_sync.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/system.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/links_a15_nullSrc.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/osa.a
    /home/hancan/PROCESSOR_SDK_VISION_03_02_00_00/vision_sdk/binaries/apps/tda2xx_evm_linux_opencx/lib/tda2xx-evm/a15_0/release/apps.a

    cfg.mk:
    # This file defines the modules included in $(MAKECONFIG) config
    #
    # Modules are split into,
    # - Use-cases specified in uc_cfg.mk
    # - Other system config/feature, specified in this file
    #
    # Any specific overrides are also specified in this file
    # Example, for TDA3x SoC EVE2/3/4 are not present and hence force marked as <blank>, i.e disabled
    #

    #
    # Additional config options
    #

    # Configure this parameter to enable using OpenCL with OpenCV
    # Setting yes enables OpenCL in OpenCV
    # Anything else disables it
    OPENCV_OPENCL=yes


    #
    # CPUs to included in build
    #
    # EVEs, IPU1-1 not required for OpenCx demos hence disabled
    # for build custom use-cases with EVE and OpenCx, EVE, IPU1-1
    # can be enabled as required
    #
    PROC_IPU1_0_INCLUDE=yes
    PROC_IPU1_1_INCLUDE=no
    PROC_IPU2_INCLUDE=no
    PROC_A15_0_INCLUDE=yes
    PROC_DSP1_INCLUDE=yes
    PROC_DSP2_INCLUDE=no
    PROC_EVE1_INCLUDE=no
    PROC_EVE2_INCLUDE=no
    PROC_EVE3_INCLUDE=no
    PROC_EVE4_INCLUDE=no


    VSDK_BOARD_TYPE=TDA2XX_EVM

    DUAL_A15_SMP_BIOS=no

    # Supported values: DDR_MEM_512M
    DDR_MEM=DDR_MEM_512M

    # Supported values: ipu1_0 ipu1_1 a15_0 none
    NDK_PROC_TO_USE=a15_0

    # Supported values: ipu1_0 none
    FATFS_PROC_TO_USE=ipu1_0
    ifeq ($(OPENCV_OPENCL), yes)
    FATFS_PROC_TO_USE=a15_0
    endif

    #
    # Used to control building of algorithm source.
    # By default algorithm source not included in Vision SDK
    #
    BUILD_ALGORITHMS=no



    #
    # Applies profile to all cores
    #
    # Supported profiles: release debug
    #PROFILE=debug
    PROFILE ?= release

    PROFILE_ipu1_0 ?= $(PROFILE)
    PROFILE_ipu1_1 ?= $(PROFILE)
    PROFILE_ipu2 ?= $(PROFILE)
    PROFILE_c66xdsp_1 ?= $(PROFILE)
    PROFILE_c66xdsp_2 ?= $(PROFILE)
    PROFILE_arp32_1 ?= $(PROFILE)
    PROFILE_arp32_2 ?= $(PROFILE)
    PROFILE_arp32_3 ?= $(PROFILE)
    PROFILE_arp32_4 ?= $(PROFILE)
    PROFILE_a15_0 ?= $(PROFILE)

    #
    # For TDA2xx & TDA2Ex - vision SDK can run on either IPU1 or IPU2 subsystem
    # For TDA3xx - We have only IPU1 and hence IPU1 is the only option
    # Select IPU primary core from the available IPU1 & IPU2 subsytems
    #
    # Supported values: ipu1_0 ipu2
    IPU_PRIMARY_CORE=ipu1_0
    IPU_SECONDARY_CORE=ipu2

    #
    # Set A15_TARGET_OS
    # A15 can run Linux or Bios
    #
    # A15_TARGET_OS support
    # Platform BIOS Linux
    #
    # TDA2XX_EVM yes yes
    # TDA3XX_EVM yes no
    # TDA2EX_EVM yes yes
    #
    # Supported values: Bios Linux
    A15_TARGET_OS=Bios

    IVAHD_INCLUDE=yes
    VPE_INCLUDE=yes
    DSS_INCLUDE=yes

    #
    # EMIF ECC and Freedom from Interference (FFI) are clubbed together as they
    # involve consolidated memory map changes
    # ECC_FFI_INCLUDE=yes is not supported for DDR_MEM_128M
    # If ECC_FFI_INCLUDE is set to no - memory map will match older versions.
    # Firewall configuration and DSP XMC configuration is enabled/disabled using this
    # flag
    # Vision SDK does not enable EMIF ECC but expects SBL to enable it.
    # Vision SDK sets up ECC error handlers irrespective of value of ECC_FFI_INCLUDE.
    #
    ECC_FFI_INCLUDE=no

    AVB_INCLUDE=no

    #
    # Enable below macro to enable DCAN integration into Vision SDK.
    #
    DCAN_INCLUDE=no

    CPU_IDLE_ENABLED=yes

    #
    # Enable below macro to view the bandwidth used by different IPs in the device
    # as a graphical plot on the display screen.
    #
    DATA_VIS_INCLUDE=no

    OPENCL_INCLUDE=yes
    ENABLE_OPENCV=yes
    ENABLE_OPENCV_TESTS=no
    BUILD_OPENCV_SRC=no
    TREAT_WARNINGS_AS_ERROR = no
    HS_DEVICE=no

    include $($(MAKEAPPNAME)_PATH)/configs/$(MAKECONFIG)/uc_cfg.mk


    uc_cfg.mk:

    ifeq ($(OPENCL_INCLUDE),yes)
    UC_vip_single_cam_openclcanny_edge=yes
    UC_vip_single_cam_openclframe_copy=yes
    endif

    ifeq ($(ENABLE_OPENCV),yes)
    UC_vip_single_cam_opencvcanny=yes
    UC_vip_single_cam_opencvopencldilation=yes
    ifeq ($(ENABLE_OPENCV_TESTS),yes)
    UC_vip_single_cam_opencvtests=yes
    endif
    endif

    Regards,
    Xie Baojian
  • Hi Xie Baojian,

    The cfg.mk & uc_cfg.mk file you shared is of tda2xx_evm_bios_opencx

    Can you share the cfg.mk & uc_cfg.mk file of tda2xx_evm_linux_opencx ?

    Regards
    Surya
  • Hi Regards,

    i am sorry for my mistake,
    cfg.mk:

    # This file defines the modules included in $(MAKECONFIG) config
    #
    # Modules are split into,
    # - Use-cases specified in uc_cfg.mk
    # - Other system config/feature, specified in this file
    #
    # Any specific overrides are also specified in this file
    # Example, for TDA3x SoC EVE2/3/4 are not present and hence force marked as <blank>, i.e disabled
    #

    #
    # Additional config options
    #

    #
    # CPUs to included in build
    #
    # IPU1 (core 0 & 1 are) not supported when IPU_PRIMARY_CORE=ipu2
    PROC_IPU1_0_INCLUDE=no
    PROC_IPU1_1_INCLUDE=no
    PROC_IPU2_INCLUDE=yes
    PROC_A15_0_INCLUDE=yes
    PROC_DSP1_INCLUDE=no
    PROC_DSP2_INCLUDE=no
    PROC_EVE1_INCLUDE=no
    PROC_EVE2_INCLUDE=no
    PROC_EVE3_INCLUDE=no
    PROC_EVE4_INCLUDE=no


    VSDK_BOARD_TYPE=TDA2XX_EVM

    # Supported values: DDR_MEM_1024M
    DDR_MEM=DDR_MEM_1024M

    # Supported values: ipu1_0 ipu1_1 a15_0 none
    NDK_PROC_TO_USE=none

    #
    # Used to control building of algorithm source.
    # By default algorithm source not included in Vision SDK
    #
    BUILD_ALGORITHMS=no



    #
    # Applies profile to all cores
    #
    # Supported profiles: release debug
    #PROFILE=debug
    PROFILE ?= release

    PROFILE_ipu1_0 ?= $(PROFILE)
    PROFILE_ipu1_1 ?= $(PROFILE)
    PROFILE_ipu2 ?= $(PROFILE)
    PROFILE_c66xdsp_1 ?= $(PROFILE)
    PROFILE_c66xdsp_2 ?= $(PROFILE)
    PROFILE_arp32_1 ?= $(PROFILE)
    PROFILE_arp32_2 ?= $(PROFILE)
    PROFILE_arp32_3 ?= $(PROFILE)
    PROFILE_arp32_4 ?= $(PROFILE)
    PROFILE_a15_0 ?= $(PROFILE)


    #
    # For TDA2xx & TDA2Ex - vision SDK can run on either IPU1 or IPU2 subsystem
    # For TDA3xx - We have only IPU1 and hence IPU1 is the only option
    # Select IPU primary core from the available IPU1 & IPU2 subsytems
    #
    # Supported values: ipu1_0 ipu2
    IPU_PRIMARY_CORE=ipu2
    IPU_SECONDARY_CORE=ipu1_0

    #
    # Set A15_TARGET_OS
    # A15 can run Linux or Bios
    #
    # A15_TARGET_OS support
    # Platform BIOS Linux
    #
    # TDA2XX_EVM yes yes
    # TDA3XX_EVM yes no
    # TDA2EX_EVM yes yes
    #
    # Supported values: Bios Linux
    A15_TARGET_OS=Linux

    IVAHD_INCLUDE=no
    VPE_INCLUDE=no
    DSS_INCLUDE=yes

    AVB_INCLUDE=no

    #
    # Enable below macro to enable DCAN integration into Vision SDK.
    #
    DCAN_INCLUDE=no

    CPU_IDLE_ENABLED=yes

    #
    # Enable below macro to view the bandwidth used by different IPs in the device
    # as a graphical plot on the display screen.
    #
    DATA_VIS_INCLUDE=no
    OPENCL_INCLUDE=yes
    TREAT_WARNINGS_AS_ERROR = yes
    HS_DEVICE=no

    DEFAULT_UBOOT_CONFIG := dra7xx_evm_vision_config
    DEFAULT_KERNEL_CONFIG := omap2plus_defconfig
    # For TDA2x
    DEFAULT_DTB := dra7-evm-infoadas.dtb

    #
    # Enable macro for OpenCV
    #
    ENABLE_OPENCV=yes
    CMEM_INCLUDE=yes
    BUILD_OPENCV_SRC=no
    BUILD_LLVM=no

    include $($(MAKEAPPNAME)_PATH)/configs/$(MAKECONFIG)/uc_cfg.mk

    uc_cfg.mk:
    ifeq ($(OPENCL_INCLUDE),yes)
    UC_vip_single_cam_openclframe_copy=yes
    UC_vip_single_cam_framecopy_sgx_display=yes
    endif

    ifeq ($(ENABLE_OPENCV),yes)
    UC_vip_single_cam_opencvcanny_sgx_display=yes
    UC_vip_single_cam_opencvopencldilation_sgx_display=yes
    endif
  • Hi Xie Baojian,

    All configs are looking fine
    Could you please just clean & build (follow below steps) ?

    From vision_sdk/build folder

    make clean
    rm -rf ../binaries (if you have build for some other configs & want to save, move them to some other location)
    make linux_clean
    make linux
    make linux_install
    make -s -j depend
    make -s -j opencx

    Note: dsp_8.1.0 compiler path should be added to system path

    Regards
    Surya