Эх сурвалжийг харах

disp: msm: sde: skip vsync wait during rsc state switch

When switching from CMD to VIDEO or vice-versa, HW no longer
requires a vsync wait in between since the vsyncs will be
synchronized. So skip the wait for HW which supports this
feature.

Change-Id: Ia5823495bc7bfc7d590098775b0a5f4b4347b5ed
Signed-off-by: Steve Cohen <[email protected]>
Steve Cohen 5 жил өмнө
parent
commit
7a5d2d5d00
1 өөрчлөгдсөн 14 нэмэгдсэн , 0 устгасан
  1. 14 0
      msm/sde_rsc.c

+ 14 - 0
msm/sde_rsc.c

@@ -543,6 +543,13 @@ static int sde_rsc_switch_to_cmd(struct sde_rsc_priv *rsc,
 		}
 	}
 
+	/* vsync wait not needed during VID->CMD switch (rev 4+ HW only) */
+	if (rsc->current_state == SDE_RSC_VID_STATE &&
+			rsc->version >= SDE_RSC_REV_4) {
+		rc = 0;
+		goto end;
+	}
+
 vsync_wait:
 	/* indicate wait for vsync for vid to cmd state switch & cfg update */
 	if (!rc && (rsc->current_state == SDE_RSC_VID_STATE ||
@@ -689,6 +696,13 @@ static int sde_rsc_switch_to_vid(struct sde_rsc_priv *rsc,
 		}
 	}
 
+	/* vsync wait not needed during CMD->VID switch (rev 4+ HW only) */
+	if (rsc->current_state == SDE_RSC_CMD_STATE &&
+			rsc->version >= SDE_RSC_REV_4) {
+		rc = 0;
+		goto end;
+	}
+
 vsync_wait:
 	/* indicate wait for vsync for vid to cmd state switch & cfg update */
 	if (!rc && (rsc->current_state == SDE_RSC_VID_STATE ||