disp: msm: sde: fix split control programming

This change avoid programming of legacy bit fields which
are conflicting with TE alignment feature bit fields
of split control register of peripheral top block.

Change-Id: Ib9f519ec82ee3b3885351dff960b176c99dcf08d
Signed-off-by: Prabhanjan Kandula <quic_pkandula@quicinc.com>
This commit is contained in:
Prabhanjan Kandula
2022-11-23 18:20:39 -08:00
committed by Gerrit - the friendly Code Review server
parent 7d464a818c
commit 7329e09b69

View File

@@ -126,7 +126,17 @@ static void sde_hw_setup_split_pipe(struct sde_hw_mdp *mdp,
c = &mdp->hw; c = &mdp->hw;
if (cfg->en) { if (test_bit(SDE_MDP_PERIPH_TOP_0_REMOVED, &mdp->caps->features) && cfg->en) {
/* avoid programming of legacy bits like SW_TRG_MUX for new targets */
if (cfg->mode == INTF_MODE_CMD) {
lower_pipe |= BIT(mdp->caps->smart_panel_align_mode);
upper_pipe = lower_pipe;
if (cfg->pp_split_slave != INTF_MAX)
lower_pipe = FLD_SMART_PANEL_FREE_RUN;
}
} else if (cfg->en) {
if (cfg->mode == INTF_MODE_CMD) { if (cfg->mode == INTF_MODE_CMD) {
lower_pipe = FLD_SPLIT_DISPLAY_CMD; lower_pipe = FLD_SPLIT_DISPLAY_CMD;
/* interface controlling sw trigger */ /* interface controlling sw trigger */