disp: msm: sde: fix dnsc_blur mux setting for cwb

Fix the dnsc_blur block pingpong mux setting for concurrent
writeback case.

Change-Id: I1a79602f05471ce2bc143258ffe87e46772f3d06
Signed-off-by: Veera Sundaram Sankaran <quic_veeras@quicinc.com>
This commit is contained in:
Veera Sundaram Sankaran
2022-01-18 16:35:25 -08:00
committed by Gerrit - the friendly Code Review server
parent 4927d28629
commit eb45d6c173
4 changed files with 12 additions and 5 deletions

View File

@@ -1,5 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2021, The Linux Foundation. All rights reserved.
*/
@@ -207,7 +208,7 @@ static void _sde_hw_dnsc_blur_dither_setup(struct sde_hw_dnsc_blur *hw_dnsc_blur
}
static void _sde_hw_dnsc_blur_bind_pingpong_blk(struct sde_hw_dnsc_blur *hw_dnsc_blur,
bool enable, const enum sde_pingpong pp)
bool enable, const enum sde_pingpong pp, bool cwb)
{
struct sde_hw_blk_reg_map *hw = &hw_dnsc_blur->hw;
int mux_cfg;
@@ -215,7 +216,10 @@ static void _sde_hw_dnsc_blur_bind_pingpong_blk(struct sde_hw_dnsc_blur *hw_dnsc
if (enable && (pp < PINGPONG_0 || pp >= PINGPONG_MAX))
return;
mux_cfg = enable ? (pp - PINGPONG_0) & 0x7 : 0xF;
if (enable)
mux_cfg = cwb ? 0xD : (pp - PINGPONG_0) & 0x7;
else
mux_cfg = 0xF;
SDE_REG_WRITE(hw, DNSC_BLUR_MUX, mux_cfg);
}