Ver código fonte

disp: msm: sde: avoid skipping of encoder reset in cwb disable

During cwb disable, encoder reset should be invoked to clean up
and release hw resources. This encoder reset should happen even
if cwb encoder TX_DONE is not successful to avoid rm rsvp leak.

Change-Id: I81353f19b69cb68d71f7d5b6477e37b6dab3ae00
Signed-off-by: Prabhanjan Kandula <[email protected]>
Prabhanjan Kandula 2 anos atrás
pai
commit
ba7b5c08cc
1 arquivos alterados com 4 adições e 0 exclusões
  1. 4 0
      msm/sde/sde_kms.c

+ 4 - 0
msm/sde/sde_kms.c

@@ -1712,6 +1712,10 @@ static void sde_kms_wait_for_commit_done(struct msm_kms *kms,
 			SDE_EVT32(DRMID(crtc), DRMID(encoder), cwb_disabling,
 					ret, SDE_EVTLOG_ERROR);
 			sde_crtc_request_frame_reset(crtc, encoder);
+
+			/* call ensure virt_reset for cwb encoder before exiting the loop */
+			if (cwb_disabling)
+				sde_encoder_virt_reset(encoder);
 			break;
 		}