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

Este commit está contenido en:
qctecmdr
2019-04-28 11:37:29 -07:00
cometido por Gerrit - the friendly Code Review server

Ver fichero

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