media: rockchip: isp: fix error of lsc repeat switch

Change-Id: I8b7948ad784c34d05a2495f9dde535cb4a265d7f
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This commit is contained in:
Cai YiWei
2022-07-26 10:39:17 +08:00
committed by Tao Huang
parent f98f2ffc40
commit c6bee6d5ef
2 changed files with 9 additions and 3 deletions
@@ -582,7 +582,10 @@ static void
isp_lsc_enable(struct rkisp_isp_params_vdev *params_vdev, bool en)
{
struct isp32_isp_params_cfg *params_rec = params_vdev->isp32_params;
u32 val;
u32 val = isp3_param_read(params_vdev, ISP3X_LSC_CTRL);
if (en == !!(val & ISP_LSC_EN))
return;
if (en) {
val = ISP_LSC_EN | ISP32_SELF_FORCE_UPD;
@@ -662,10 +662,13 @@ static void
isp_lsc_enable(struct rkisp_isp_params_vdev *params_vdev, bool en, u32 id)
{
struct isp3x_isp_params_cfg *params_rec = params_vdev->isp3x_params + id;
u32 val = ISP_LSC_EN;
u32 val = isp3_param_read(params_vdev, ISP3X_LSC_CTRL, id);
if (en == !!(val & ISP_LSC_EN))
return;
if (en) {
isp3_param_set_bits(params_vdev, ISP3X_LSC_CTRL, val, id);
isp3_param_set_bits(params_vdev, ISP3X_LSC_CTRL, ISP_LSC_EN, id);
if (params_vdev->dev->hw_dev->is_single)
isp_lsc_matrix_cfg_sram(params_vdev,
&params_rec->others.lsc_cfg, false, id);