Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a702cd89 authored by Dhaval Patel's avatar Dhaval Patel
Browse files

disp: msm: avoid vsync delay during seamless mode switch



Remove sde rscc vsync wait requirement during seamless
mode switch state transition to reduce the transition
delay. SDE RSCC rev 3.0 only keeps vsync wait requirement
for solver mode disable.

Change-Id: I6119dbb97d47a70eecc9e5d356c648003adfcc29
Signed-off-by: default avatarDhaval Patel <pdhaval@codeaurora.org>
parent 9b09b9af
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -484,7 +484,7 @@ static int sde_rsc_switch_to_cmd(struct sde_rsc_priv *rsc,
	 */
	if (rsc->current_state == SDE_RSC_CMD_STATE) {
		rc = 0;
		if (config)
		if (config && rsc->version < SDE_RSC_REV_3)
			goto vsync_wait;
		else
			goto end;
@@ -504,7 +504,8 @@ static int sde_rsc_switch_to_cmd(struct sde_rsc_priv *rsc,

vsync_wait:
	/* indicate wait for vsync for vid to cmd state switch & cfg update */
	if (!rc && (rsc->current_state == SDE_RSC_VID_STATE ||
	if (!rc && (rsc->version < SDE_RSC_REV_3) &&
		 (rsc->current_state == SDE_RSC_VID_STATE ||
			rsc->current_state == SDE_RSC_CMD_STATE)) {
		/* clear VSYNC timestamp for indication when update completes */
		if (rsc->hw_ops.hw_vsync)
@@ -622,7 +623,7 @@ static int sde_rsc_switch_to_vid(struct sde_rsc_priv *rsc,
	 */
	if (rsc->current_state == SDE_RSC_VID_STATE) {
		rc = 0;
		if (config)
		if (config && rsc->version < SDE_RSC_REV_3)
			goto vsync_wait;
		else
			goto end;
@@ -643,7 +644,8 @@ static int sde_rsc_switch_to_vid(struct sde_rsc_priv *rsc,

vsync_wait:
	/* indicate wait for vsync for vid to cmd state switch & cfg update */
	if (!rc && (rsc->current_state == SDE_RSC_VID_STATE ||
	if (!rc && (rsc->version < SDE_RSC_REV_3) &&
		 (rsc->current_state == SDE_RSC_VID_STATE ||
			rsc->current_state == SDE_RSC_CMD_STATE)) {
		/* clear VSYNC timestamp for indication when update completes */
		if (rsc->hw_ops.hw_vsync)