disp: msm: sde: fix plane detach from ctl path

During display disable, ensure source pipes are detached
from control path in the disable commit itself. Otherwise,
if other display acquire these pipes immediately it can hang
as these pipes are still staged on current display ctl path.

Change-Id: Idc376051908676c74bc26394372a92316a674e3b
Signed-off-by: Prabhanjan Kandula <quic_pkandula@quicinc.com>
Bu işleme şunda yer alıyor:
Prabhanjan Kandula
2023-07-27 18:02:32 -07:00
ebeveyn 6c3035c600
işleme 3817317773

Dosyayı Görüntüle

@@ -994,11 +994,13 @@ static void sde_hw_ctl_clear_all_blendstages(struct sde_hw_ctl *ctx)
return;
c = &ctx->hw;
SDE_REG_WRITE(c, CTL_FETCH_PIPE_ACTIVE, 0);
for (i = 0; i < ctx->mixer_count; i++) {
int mixer_id = ctx->mixer_hw_caps[i].id;
if (mixer_id >= LM_DCWB_DUMMY_0)
return;
break;
SDE_REG_WRITE(c, CTL_LAYER(mixer_id), 0);
SDE_REG_WRITE(c, CTL_LAYER_EXT(mixer_id), 0);
@@ -1006,7 +1008,6 @@ static void sde_hw_ctl_clear_all_blendstages(struct sde_hw_ctl *ctx)
SDE_REG_WRITE(c, CTL_LAYER_EXT3(mixer_id), 0);
SDE_REG_WRITE(c, CTL_LAYER_EXT4(mixer_id), 0);
}
SDE_REG_WRITE(c, CTL_FETCH_PIPE_ACTIVE, 0);
}
static void _sde_hw_ctl_get_mixer_cfg(struct sde_hw_ctl *ctx,