diff --git a/msm/sde/sde_encoder.c b/msm/sde/sde_encoder.c index f1466b0706..bef88c8c28 100644 --- a/msm/sde/sde_encoder.c +++ b/msm/sde/sde_encoder.c @@ -2065,8 +2065,14 @@ static int sde_encoder_hw_fence_signal(struct sde_encoder_phys *phys_enc) /* out of order hw fence error signal is needed for video panel. */ if (sde_encoder_check_curr_mode(phys_enc->parent, MSM_DISPLAY_VIDEO_MODE)) { /* out of order hw fence error signal */ - msm_hw_fence_update_txq_error(hwfence_data->hw_fence_handle, - phys_enc->sde_hw_fence_handle, 1, MSM_HW_FENCE_UPDATE_ERROR_WITH_MOVE); + rc = msm_hw_fence_update_txq_error(hwfence_data->hw_fence_handle, + phys_enc->sde_hw_fence_handle, phys_enc->sde_hw_fence_error_value, + MSM_HW_FENCE_UPDATE_ERROR_WITH_MOVE); + if (rc) { + SDE_ERROR("msm_hw_fence_update_txq_error failed, rc = %d\n", rc); + SDE_EVT32(DRMID(phys_enc->parent), rc, SDE_EVTLOG_ERROR); + } + /* wait for frame done to avoid out of order signalling for cmd mode. */ } else if (pending_kickoff_cnt) { SDE_EVT32(DRMID(phys_enc->parent), SDE_EVTLOG_FUNC_CASE1);