disp: msm: sde: fence error handling for wb and cwb retire fence
Fence error handling for wb and cwb retire fence. Signal the retire fence for the fence error frame. Change-Id: I0f73195c50edab4b8aefb58cea342214be87584c Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
Bu işleme şunda yer alıyor:

işlemeyi yapan:
Gerrit - the friendly Code Review server

ebeveyn
85015a84cb
işleme
5f4735e2ce
@@ -3891,6 +3891,10 @@ int sde_crtc_sw_fence_error_handle(struct drm_crtc *crtc, int err_status)
|
|||||||
sde_crtc->handle_fence_error_bw_update = true;
|
sde_crtc->handle_fence_error_bw_update = true;
|
||||||
|
|
||||||
drm_for_each_encoder_mask(drm_encoder, crtc->dev, crtc->state->encoder_mask) {
|
drm_for_each_encoder_mask(drm_encoder, crtc->dev, crtc->state->encoder_mask) {
|
||||||
|
/* continue if copy encoder is encountered */
|
||||||
|
if (sde_crtc_state_in_clone_mode(drm_encoder, crtc->state))
|
||||||
|
continue;
|
||||||
|
|
||||||
rc = sde_encoder_handle_dma_fence_out_of_order(drm_encoder);
|
rc = sde_encoder_handle_dma_fence_out_of_order(drm_encoder);
|
||||||
if (rc) {
|
if (rc) {
|
||||||
SDE_DEBUG("Dma fence out of order failed, rc = %d\n", rc);
|
SDE_DEBUG("Dma fence out of order failed, rc = %d\n", rc);
|
||||||
|
@@ -4423,8 +4423,12 @@ static void _sde_encoder_kickoff_phys(struct sde_encoder_virt *sde_enc,
|
|||||||
|
|
||||||
/* reset input fence status and skip flush for fence error case. */
|
/* reset input fence status and skip flush for fence error case. */
|
||||||
if (sde_crtc->input_fence_status < 0) {
|
if (sde_crtc->input_fence_status < 0) {
|
||||||
SDE_EVT32(DRMID(&sde_enc->base), sde_crtc->input_fence_status);
|
if (!sde_encoder_in_clone_mode(&sde_enc->base))
|
||||||
sde_crtc->input_fence_status = 0;
|
sde_crtc->input_fence_status = 0;
|
||||||
|
|
||||||
|
SDE_EVT32(DRMID(&sde_enc->base), sde_encoder_in_clone_mode(&sde_enc->base),
|
||||||
|
sde_crtc->input_fence_status);
|
||||||
|
|
||||||
goto handle_elevated_ahb_vote;
|
goto handle_elevated_ahb_vote;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Yeni konuda referans
Bir kullanıcı engelle