Skip to content

Commit 824183f

Browse files
YiChongZhjamess-huang
authored andcommitted
media: rockchip: isp1: flt module is always disabled, fix it
flt_config would override the current CIF_ISP_FLT_ENA bit value, fix it. BUG=b:36227021 TEST=scarlet can preview, flt module can be enabled. Change-Id: I33b02265d8b7c853b5035c99e99b9dc8fab5b0e0 Signed-off-by: ZhongYiChong <zyc@rock-chips.com> Reviewed-on: https://tp-biosrd-v02/gerrit/82868 Reviewed-by: Jamess Huang(黃以民) <Jamess_Huang@asus.com> Tested-by: Jamess Huang(黃以民) <Jamess_Huang@asus.com>
1 parent 7d13060 commit 824183f

1 file changed

Lines changed: 10 additions & 5 deletions

File tree

drivers/media/platform/rockchip/isp1/isp_params.c

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,8 @@ static void lsc_config(struct rkisp1_isp_params_vdev *params_vdev,
352352
static void flt_config(struct rkisp1_isp_params_vdev *params_vdev,
353353
const struct cifisp_flt_config *arg)
354354
{
355+
u32 filt_mode;
356+
355357
rkisp1_iowrite32(params_vdev, arg->thresh_bl0, CIF_ISP_FILT_THRESH_BL0);
356358
rkisp1_iowrite32(params_vdev, arg->thresh_bl1, CIF_ISP_FILT_THRESH_BL1);
357359
rkisp1_iowrite32(params_vdev, arg->thresh_sh0, CIF_ISP_FILT_THRESH_SH0);
@@ -363,11 +365,14 @@ static void flt_config(struct rkisp1_isp_params_vdev *params_vdev,
363365
rkisp1_iowrite32(params_vdev, arg->fac_sh1, CIF_ISP_FILT_FAC_SH1);
364366
rkisp1_iowrite32(params_vdev, arg->lum_weight, CIF_ISP_FILT_LUM_WEIGHT);
365367

366-
rkisp1_iowrite32(params_vdev, (arg->mode ? CIF_ISP_FLT_MODE_DNR : 0) |
367-
CIF_ISP_FLT_CHROMA_V_MODE(arg->chr_v_mode) |
368-
CIF_ISP_FLT_CHROMA_H_MODE(arg->chr_h_mode) |
369-
CIF_ISP_FLT_GREEN_STAGE1(arg->grn_stage1),
370-
CIF_ISP_FILT_MODE);
368+
filt_mode = rkisp1_ioread32(params_vdev, CIF_ISP_FILT_MODE);
369+
filt_mode &= CIF_ISP_FLT_ENA;
370+
if (arg->mode)
371+
filt_mode |= CIF_ISP_FLT_MODE_DNR;
372+
filt_mode |= CIF_ISP_FLT_CHROMA_V_MODE(arg->chr_v_mode) |
373+
CIF_ISP_FLT_CHROMA_H_MODE(arg->chr_h_mode) |
374+
CIF_ISP_FLT_GREEN_STAGE1(arg->grn_stage1);
375+
rkisp1_iowrite32(params_vdev, filt_mode, CIF_ISP_FILT_MODE);
371376
}
372377

373378
/* ISP demosaic interface function */

0 commit comments

Comments
 (0)