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: The system hang when enable EE and VISS output YUV422

Part Number: TDA4VM

Hi expert,

 Our custom config VISS output YUV422, it work well if disable EE module, but the system hang when enable EE. 

they modify in app_muti_cam demo like below,

 vissObj->params.mux_output2      = 5 ;//YUV422

vissObj->params.chroma_mode      = 1;

vissObj->params.ee_mode = TIVX_VPAC_VISS_EE_MODE_Y8; then the system hang, and we found it pending as below code,

if we modify  vissObj->params.mux_output2      = 4 //nv12, it work well. 

could you give us some tips about this issue. I think some config is not correctly.

Regards,

Cary

  • Hi expert,

       How about this ticket going, could you give some feedback on this problem?

  • Hi ,

    How do you enable/set YEE configuration? Can you please share this part of the code? Is it done via DCC? 

    Can you make small change in the OpenVX node and try it? In the file ti-processor-sdk-rtos-j721e-evm-08_04_00_02\tiovx\kernels_j7\hwa\vpac_viss\vx_vpac_viss_target_drv.c, in the API tivxVpacVissSetFcpConfig, can you add below highlighted code?

    if (((VHWA_M2M_VISS_EE_ON_LUMA12 == vissDrvPrms->edgeEnhancerMode) ||
    (VHWA_M2M_VISS_EE_ON_LUMA8 == vissDrvPrms->edgeEnhancerMode)) &&
    (NULL != vissCfgRef->fcpCfg[0].eeCfg))
    {
    if (VHWA_M2M_VISS_EE_ON_LUMA12 == vissDrvPrms->edgeEnhancerMode)
    {
    vissCfgRef->fcpCfg[0].eeCfg->bypassY12 = FALSE;
    vissCfgRef->fcpCfg[0].eeCfg->eeForY12OrY8 = 0u;

    if (FVID2_DF_YUV422I_UYVY == vissPrms->outPrms[VHWA_M2M_VISS_OUT_YUV422_12B_IDX].fmt.dataFormat)
    {
    vissCfgRef->fcpCfg[0].eeCfg->alignY12withChroma = TRUE;
    }
    }
    else
    {
    vissCfgRef->fcpCfg[0].eeCfg->bypassY12 = TRUE;
    }

    if (VHWA_M2M_VISS_EE_ON_LUMA8 == vissDrvPrms->edgeEnhancerMode)
    {
    vissCfgRef->fcpCfg[0].eeCfg->bypassY8 = FALSE;
    vissCfgRef->fcpCfg[0].eeCfg->eeForY12OrY8 = 1u;
    vissCfgRef->fcpCfg[0].eeCfg->leftShift = 2u;
    vissCfgRef->fcpCfg[0].eeCfg->rightShift = 2u;

    if (FVID2_DF_YUV422I_UYVY == vissPrms->outPrms[VHWA_M2M_VISS_OUT_YUV422_8B_IDX].fmt.dataFormat)
    {
    vissCfgRef->fcpCfg[0].eeCfg->alignY8withChroma = TRUE;
    }
    }
    else
    {
    vissCfgRef->fcpCfg[0].eeCfg->bypassY8 = TRUE;
    }

    Regards,

    Brijesh