mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 10:58:48 +09:00
media: rockchip: isp1: fix demosaic is not bypass for grey sensor
Change-Id: I4c3200720cd0c2c54c56e298b55367404eca2f58 Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
This commit is contained in:
@@ -1293,6 +1293,12 @@ void __isp_isr_other_config(struct rkisp1_isp_params_vdev *params_vdev,
|
||||
{
|
||||
unsigned int module_en_update, module_cfg_update, module_ens;
|
||||
struct rkisp1_isp_params_ops *ops = params_vdev->ops;
|
||||
struct ispsd_in_fmt *in_fmt = ¶ms_vdev->dev->isp_sdev.in_fmt;
|
||||
bool is_grey_sensor;
|
||||
|
||||
is_grey_sensor = in_fmt->mbus_code == MEDIA_BUS_FMT_Y8_1X8 ||
|
||||
in_fmt->mbus_code == MEDIA_BUS_FMT_Y10_1X10 ||
|
||||
in_fmt->mbus_code == MEDIA_BUS_FMT_Y12_1X12;
|
||||
|
||||
module_en_update = new_params->module_en_update;
|
||||
module_cfg_update = new_params->module_cfg_update;
|
||||
@@ -1390,8 +1396,9 @@ void __isp_isr_other_config(struct rkisp1_isp_params_vdev *params_vdev,
|
||||
}
|
||||
}
|
||||
|
||||
if ((module_en_update & CIFISP_MODULE_BDM) ||
|
||||
(module_cfg_update & CIFISP_MODULE_BDM)) {
|
||||
if (((module_en_update & CIFISP_MODULE_BDM) ||
|
||||
(module_cfg_update & CIFISP_MODULE_BDM)) &&
|
||||
!is_grey_sensor) {
|
||||
/* update bdm config */
|
||||
if ((module_cfg_update & CIFISP_MODULE_BDM))
|
||||
ops->bdm_config(params_vdev, &new_params->others.bdm_config);
|
||||
|
||||
@@ -206,7 +206,8 @@ static int rkisp1_config_isp(struct rkisp1_device *dev)
|
||||
if (in_fmt->mbus_code == MEDIA_BUS_FMT_Y8_1X8 ||
|
||||
in_fmt->mbus_code == MEDIA_BUS_FMT_Y10_1X10 ||
|
||||
in_fmt->mbus_code == MEDIA_BUS_FMT_Y12_1X12)
|
||||
writel(CIF_ISP_DEMOSAIC_TH(0x40c),
|
||||
writel(CIF_ISP_DEMOSAIC_BYPASS |
|
||||
CIF_ISP_DEMOSAIC_TH(0xc),
|
||||
base + CIF_ISP_DEMOSAIC);
|
||||
else
|
||||
writel(CIF_ISP_DEMOSAIC_TH(0xc),
|
||||
|
||||
Reference in New Issue
Block a user