فهرست منبع

disp: msm: sde: avoid wb commit before cwb disable

Add support to detect if a writeback commit is received
while cwb commit is going on. Allow writeback commit
only once the cwb commit is completed and cwb is
disabled.

Change-Id: I020659ed63f9ff660a905938a92a6ed6d07a4917
Signed-off-by: Krishna Manikandan <[email protected]>
Krishna Manikandan 5 سال پیش
والد
کامیت
603dd34629
1فایلهای تغییر یافته به همراه8 افزوده شده و 0 حذف شده
  1. 8 0
      msm/sde/sde_encoder_phys_wb.c

+ 8 - 0
msm/sde/sde_encoder_phys_wb.c

@@ -722,6 +722,7 @@ static int sde_encoder_phys_wb_atomic_check(
 	struct sde_rect wb_roi;
 	const struct drm_display_mode *mode = &crtc_state->mode;
 	int rc;
+	bool clone_mode_curr = false;
 
 	SDE_DEBUG("[atomic_check:%d,\"%s\",%d,%d]\n",
 			hw_wb->idx - WB_0, mode->name,
@@ -737,8 +738,15 @@ static int sde_encoder_phys_wb_atomic_check(
 		return -EINVAL;
 	}
 
+	clone_mode_curr = phys_enc->in_clone_mode;
+
 	_sde_enc_phys_wb_detect_cwb(phys_enc, crtc_state);
 
+	if (clone_mode_curr && !phys_enc->in_clone_mode) {
+		SDE_ERROR("WB commit before CWB disable\n");
+		return -EINVAL;
+	}
+
 	memset(&wb_roi, 0, sizeof(struct sde_rect));
 
 	rc = sde_wb_connector_state_get_output_roi(conn_state, &wb_roi);