Merge "disp: msm: avoid vsync delay during seamless mode switch"

This commit is contained in:
qctecmdr 2019-04-28 11:37:29 -07:00 • committed by Gerrit - the friendly Code Review server
commit 4b1742319e

View file

@ -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)