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.

TDA3XEVM: SBL Failure

Part Number: TDA3XEVM

Hi,

I'm trying to build iss_capture_isp_simcop_display,iss monochrome usecases.I have enabled those usecases in uc_cfg.mk make file.

Following errors are observed while booting the board

1.520679 s: CHAINS: Please make sure BSP is build with WDR and LDC enabled !!!
[IPU1-0] 1.520893 s: SYSTEM: NOTIFY: [HOST] is NOT ENABLED in this build !!!
[IPU1-0] 1.520954 s: Assertion @ Line: 199 in system_ipc_bios_ipc.c: (Bool)FALSE : failed !!!
[IPU1-0] 1.521350 s: Assertion @ Line: 199 in system_ipc_bios_ipc.c: (Bool)FALSE : failed !!!

May I know the reason for failure.

Thanks in advance.

Regards,

Anil

  • Hi Anil,

    What is the SDK version you are using?

    Regards,
    Rishabh
  • Hi,

    It seems that you have not enabled IPU1 in your build.
    Have you made any changes to cfg.mk used by TDA3xx build.

    Regards,
    Rishabh
  • Hi Rishabh,

    Thanks for the reply.

    I haven't  seen any error for disabling the IPU1 due to that I haven'tt enabled IPU1 is cfg.mk.

    Please find the attached cfg.mk file.

    #
    # 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
    #
    PROC_IPU1_0_INCLUDE=yes
    PROC_IPU1_1_INCLUDE=no
    PROC_DSP1_INCLUDE=yes
    PROC_DSP2_INCLUDE=no
    PROC_EVE1_INCLUDE=yes
    
    
    VSDK_BOARD_TYPE=TDA3XX_EVM
    
    #Enable SMP on IPU1
    IPU1_SMP_BIOS=no
    
    # Supported values: DDR_MEM_512M DDR_MEM_128M
    DDR_MEM=DDR_MEM_512M
    
    # Supported values: ipu1_0 ipu1_1 none
    NDK_PROC_TO_USE=ipu1_1
    
    #Used to control TFDTP stack (supported only when NDK_PROC_TO_USE = ipu1_1)
    NSP_TFDTP_INCLUDE=yes
    
    # Supported values: ipu1_0 none
    FATFS_PROC_TO_USE=ipu1_0
    
    #
    # 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_c66xdsp_1 ?= $(PROFILE)
    PROFILE_c66xdsp_2 ?= $(PROFILE)
    PROFILE_arp32_1 ?= $(PROFILE)
    
    DSS_INCLUDE=yes
    CAL_INCLUDE=yes
    ISS_INCLUDE=yes
    ISS_ENABLE_DEBUG_TAPS=no
    WDR_LDC_INCLUDE=yes
    
    RTI_INCLUDE=no
    
    #
    # 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
    
    #
    # DCC is integrated in a way that requires ESM.
    # Both modules are, therefore, clubbed together
    # These are present only in TDA3XX
    # Setting this to "no" only disables usage of these modules
    # Source files are always enabled in build for TDA3XX
    #
    DCC_ESM_INCLUDE=no
    
    
    #
    # Enable below macro to enable DCAN integration into Vision SDK.
    #
    DCAN_INCLUDE=yes
    
    #
    # Enable below macro to enable OPENVX into Vision SDK
    #
    OPENVX_INCLUDE=no
    
    CIO_REDIRECT=yes
    
    # Fast boot usecase is currently supported only for tda3x
    FAST_BOOT_INCLUDE=no
    
    # Fast Boot for 3D Surround View on TDA3XX
    SRV_FAST_BOOT_INCLUDE=no
    
    ifeq ($(SRV_FAST_BOOT_INCLUDE), yes)
    PROC_EVE1_INCLUDE=no
    PROC_IPU1_1_INCLUDE=no
    endif
    
    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
    
    HS_DEVICE=no
    
    ifeq ($(DDR_MEM), DDR_MEM_128M)
    PROC_DSP2_INCLUDE=no
    PROC_EVE1_INCLUDE=no
    ECC_FFI_INCLUDE=no
    endif
    
    ifeq ($(FAST_BOOT_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(SRV_FAST_BOOT_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(ECC_FFI_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(RTI_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(HS_DEVICE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(IPU1_SMP_BIOS), yes)
    #OPENVX is not tested with SMP
    OPENVX_INCLUDE=no
    endif
    #
    #Flag for task profiling
    #
    ENABLE_TASK_PROFILE_UTIL=yes
    
    include $($(MAKEAPPNAME)_PATH)/configs/$(MAKECONFIG)/uc_cfg.mk
    

    Thanks,

    Anil

  • I'm using PROCESSOR_SDK_VISION_03_04_00_00.
  • Hi Anil,

    It seems that some of the libraries might be stale due to which you are getting this error.
    Can you do a clean build (Use 'rm -rf binary').

    Regards,
    Rishabh
  • UC_fast_boot_iss_capture_isp_simcop_pd_display=no
    UC_iss_capture_isp_simcop_pd_display=yes
    UC_iss_capture_isp_simcop_display=no
    UC_iss_monochrome_capt_isp_display=no
    UC_iss_mult_capture_isp_2d_3d_sv_tda3x=no
    UC_iss_mult_capture_isp_dewarp_3dsv_tda3xx=no
    UC_iss_mult_capture_isp_dewarp_3dsv_rearview_tda3xx=no
    UC_iss_mult_capture_isp_dewarp_stereo_tda3xx=no
    UC_iss_mult_capture_isp_dewarp_stereoplus_tda3xx=no
    UC_iss_mult_capture_isp_simcop_stereo_tda3xx=no
    UC_iss_mult_capture_isp_stereo_autocalib_tda3xx=no
    UC_iss_mult_capture_isp_simcop_sv_tda3xx=no
    UC_srv_calibration=no
    UC_lvds_vip_multi_cam_view_tda3xx=no
    UC_lvds_vip_sv_tda3xx=no
    #SRV to work, Diabling NW UC from default config
    UC_network_rx_tx=no
    UC_tfdtprx_display=no
    UC_saveDisFrame=no
    UC_vip_single_cam_analytics2=no
    UC_vip_single_cam_dense_optical_flow=no
    UC_vip_single_cam_edge_detection=no
    UC_vip_single_cam_frame_copy=no
    UC_vip_single_cam_frame_copy_safety=no
    UC_vip_single_cam_lane_detection=no
    UC_vip_single_cam_object_detection2=no
    UC_vip_single_cam_sfm=no
    UC_vip_single_cam_sparse_optical_flow=no
    UC_vip_single_cam_subframe_copy=no
    UC_vip_single_cam_tlr=no
    UC_vip_single_cam_view=no
    UC_vip_single_cam_view_dsswb=no
    UC_vip_single_cam_display_metadata=no
    UC_csi2_cal_multi_cam_view=no
    UC_csi2_cal_sv_standalone=no
    UC_rear_view_panorama_tda3xx=no
    UC_uart_Intr=no
    ifeq ($(OPENVX_INCLUDE),no)
    UC_vip_single_cam_openvx=no
    endif
    
    # TI Deep Learning Use Case
    UC_tidl=no
    UC_tidl_OD=no
    
    UC_null_src_display=no
    UC_My_LaneDetect=no
    #
    # 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
    #
    PROC_IPU1_0_INCLUDE=yes
    PROC_IPU1_1_INCLUDE=yes
    PROC_DSP1_INCLUDE=yes
    PROC_DSP2_INCLUDE=no
    PROC_EVE1_INCLUDE=yes
    
    
    VSDK_BOARD_TYPE=TDA3XX_EVM
    
    #Enable SMP on IPU1
    IPU1_SMP_BIOS=no
    
    # Supported values: DDR_MEM_512M DDR_MEM_128M
    DDR_MEM=DDR_MEM_512M
    
    # Supported values: ipu1_0 ipu1_1 none
    NDK_PROC_TO_USE=none
    
    #Used to control TFDTP stack (supported only when NDK_PROC_TO_USE = ipu1_1)
    NSP_TFDTP_INCLUDE=yes
    
    # Supported values: ipu1_0 none
    FATFS_PROC_TO_USE=ipu1_0
    
    #
    # 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_c66xdsp_1 ?= $(PROFILE)
    PROFILE_c66xdsp_2 ?= $(PROFILE)
    PROFILE_arp32_1 ?= $(PROFILE)
    
    DSS_INCLUDE=yes
    CAL_INCLUDE=yes
    ISS_INCLUDE=yes
    ISS_ENABLE_DEBUG_TAPS=no
    WDR_LDC_INCLUDE=yes
    
    RTI_INCLUDE=no
    
    #
    # 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
    
    #
    # DCC is integrated in a way that requires ESM.
    # Both modules are, therefore, clubbed together
    # These are present only in TDA3XX
    # Setting this to "no" only disables usage of these modules
    # Source files are always enabled in build for TDA3XX
    #
    DCC_ESM_INCLUDE=no
    
    
    #
    # Enable below macro to enable DCAN integration into Vision SDK.
    #
    DCAN_INCLUDE=yes
    
    #
    # Enable below macro to enable OPENVX into Vision SDK
    #
    OPENVX_INCLUDE=no
    
    CIO_REDIRECT=yes
    
    # Fast boot usecase is currently supported only for tda3x
    FAST_BOOT_INCLUDE=no
    
    # Fast Boot for 3D Surround View on TDA3XX
    SRV_FAST_BOOT_INCLUDE=no
    
    ifeq ($(SRV_FAST_BOOT_INCLUDE), yes)
    PROC_EVE1_INCLUDE=no
    PROC_IPU1_1_INCLUDE=no
    endif
    
    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
    
    HS_DEVICE=no
    
    ifeq ($(DDR_MEM), DDR_MEM_128M)
    PROC_DSP2_INCLUDE=no
    PROC_EVE1_INCLUDE=no
    ECC_FFI_INCLUDE=no
    endif
    
    ifeq ($(FAST_BOOT_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(SRV_FAST_BOOT_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(ECC_FFI_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(RTI_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(HS_DEVICE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(IPU1_SMP_BIOS), yes)
    #OPENVX is not tested with SMP
    OPENVX_INCLUDE=no
    endif
    #
    #Flag for task profiling
    #
    ENABLE_TASK_PROFILE_UTIL=yes
    
    include $($(MAKEAPPNAME)_PATH)/configs/$(MAKECONFIG)/uc_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
    #
    PROC_IPU1_0_INCLUDE=yes
    PROC_IPU1_1_INCLUDE=no
    PROC_DSP1_INCLUDE=yes
    PROC_DSP2_INCLUDE=no
    PROC_EVE1_INCLUDE=yes
    
    
    VSDK_BOARD_TYPE=TDA3XX_EVM
    
    #Enable SMP on IPU1
    IPU1_SMP_BIOS=no
    
    # Supported values: DDR_MEM_512M DDR_MEM_128M
    DDR_MEM=DDR_MEM_512M
    
    # Supported values: ipu1_0 ipu1_1 none
    NDK_PROC_TO_USE=ipu1_1
    
    #Used to control TFDTP stack (supported only when NDK_PROC_TO_USE = ipu1_1)
    NSP_TFDTP_INCLUDE=yes
    
    # Supported values: ipu1_0 none
    FATFS_PROC_TO_USE=ipu1_0
    
    #
    # 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_c66xdsp_1 ?= $(PROFILE)
    PROFILE_c66xdsp_2 ?= $(PROFILE)
    PROFILE_arp32_1 ?= $(PROFILE)
    
    DSS_INCLUDE=yes
    CAL_INCLUDE=yes
    ISS_INCLUDE=yes
    ISS_ENABLE_DEBUG_TAPS=no
    WDR_LDC_INCLUDE=yes
    
    RTI_INCLUDE=no
    
    #
    # 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
    
    #
    # DCC is integrated in a way that requires ESM.
    # Both modules are, therefore, clubbed together
    # These are present only in TDA3XX
    # Setting this to "no" only disables usage of these modules
    # Source files are always enabled in build for TDA3XX
    #
    DCC_ESM_INCLUDE=no
    
    
    #
    # Enable below macro to enable DCAN integration into Vision SDK.
    #
    DCAN_INCLUDE=yes
    
    #
    # Enable below macro to enable OPENVX into Vision SDK
    #
    OPENVX_INCLUDE=no
    
    CIO_REDIRECT=yes
    
    # Fast boot usecase is currently supported only for tda3x
    FAST_BOOT_INCLUDE=no
    
    # Fast Boot for 3D Surround View on TDA3XX
    SRV_FAST_BOOT_INCLUDE=no
    
    ifeq ($(SRV_FAST_BOOT_INCLUDE), yes)
    PROC_EVE1_INCLUDE=no
    PROC_IPU1_1_INCLUDE=no
    endif
    
    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
    
    HS_DEVICE=no
    
    ifeq ($(DDR_MEM), DDR_MEM_128M)
    PROC_DSP2_INCLUDE=no
    PROC_EVE1_INCLUDE=no
    ECC_FFI_INCLUDE=no
    endif
    
    ifeq ($(FAST_BOOT_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(SRV_FAST_BOOT_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(ECC_FFI_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(RTI_INCLUDE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(HS_DEVICE), yes)
    OPENVX_INCLUDE=no
    endif
    ifeq ($(IPU1_SMP_BIOS), yes)
    #OPENVX is not tested with SMP
    OPENVX_INCLUDE=no
    endif
    #
    #Flag for task profiling
    #
    ENABLE_TASK_PROFILE_UTIL=yes
    
    include $($(MAKEAPPNAME)_PATH)/configs/$(MAKECONFIG)/uc_cfg.mk
    
    UseCase: chains_issIspSimcop_pd_Display
    
    IssCapture -> IssM2mIsp -> IssM2mSimcop -> IssM2mResizer -> Dup_capture -> Merge_display
    
    IssM2mIsp -> Alg_IssAewb
    
    Dup_capture -> Alg_ImgPyramid -> Dup_imgPyramid -> Alg_FPCompute (EVE1) -> Alg_ObjectDetection (DSP1) -> Merge_objectDetect (DSP1)
    
    Dup_imgPyramid -> Merge_objectDetect (DSP1) -> Sync_objectDetect (DSP1) -> Alg_ObjectClassification (DSP1) -> Alg_ObjectDraw -> Merge_display -> Display_Video
    
    GrpxSrc -> Display_Grpx
    Hi Rishabh,

    I have tried clean build and by enabling IPU1_1 nothing has worked.

    Please find the below attached error when IPU1_1 is enabled :

    [IPU1-0]      4.629292 s:  CHAINS: Please make sure BSP is build with WDR and LDC enabled !!!

    [IPU1-1]      4.629567 s:  Assertion @ Line: 111 in system_linkApi_local.c: linkId < SYSTEM_LINK_ID_MAX : failed !!!

    [IPU1-1]      4.630025 s:  Assertion @ Line: 111 in system_linkApi_local.c: linkId < SYSTEM_LINK_ID_MAX : failed !!!

    I'm trying to build my iss usecase. Please find the attached usecase file,uc_cfg.mk and cfg.mk file.

    Pls let me know where I'm going wrong.

    Regards,

    Anil

  • Hi Anil,

    Did you try this use case with Vision SDK release package i.e. without any of your changes.

    Regards,
    Rishabh
  • Hi,

    I haven't heard back from you, I'm assuming you were able to resolve your issue.
    If not, just post a reply below (or create a new thread if the thread has locked due to time-out).

    Regards,
    Rishabh