mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 19:30:30 +09:00
media: rockchip: isp: fix drc and hdrmge err for multi sensor
Change-Id: Iec602581f6d7b99076544ebada6cb39eea69393e Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This commit is contained in:
@@ -4264,10 +4264,14 @@ rkisp_params_cfg_v2x(struct rkisp_isp_params_vdev *params_vdev,
|
||||
struct rkisp_isp_params_val_v21 *priv_val =
|
||||
(struct rkisp_isp_params_val_v21 *)params_vdev->priv_val;
|
||||
|
||||
priv_val->last_hdrmge = priv_val->cur_hdrmge;
|
||||
priv_val->last_hdrdrc = priv_val->cur_hdrdrc;
|
||||
priv_val->cur_hdrmge = new_params->others.hdrmge_cfg;
|
||||
priv_val->cur_hdrdrc = new_params->others.drc_cfg;
|
||||
if (new_params->module_cfg_update & ISP2X_MODULE_HDRMGE) {
|
||||
priv_val->last_hdrmge = priv_val->cur_hdrmge;
|
||||
priv_val->cur_hdrmge = new_params->others.hdrmge_cfg;
|
||||
}
|
||||
if (new_params->module_cfg_update & ISP2X_MODULE_DRC) {
|
||||
priv_val->last_hdrdrc = priv_val->cur_hdrdrc;
|
||||
priv_val->cur_hdrdrc = new_params->others.drc_cfg;
|
||||
}
|
||||
new_params->module_cfg_update = 0;
|
||||
vb2_buffer_done(&cur_buf->vb.vb2_buf, VB2_BUF_STATE_DONE);
|
||||
cur_buf = NULL;
|
||||
|
||||
@@ -5300,10 +5300,15 @@ rkisp_params_cfg_v32(struct rkisp_isp_params_vdev *params_vdev,
|
||||
struct rkisp_isp_params_val_v32 *priv_val =
|
||||
(struct rkisp_isp_params_val_v32 *)params_vdev->priv_val;
|
||||
|
||||
priv_val->last_hdrmge = priv_val->cur_hdrmge;
|
||||
priv_val->last_hdrdrc = priv_val->cur_hdrdrc;
|
||||
priv_val->cur_hdrmge = new_params->others.hdrmge_cfg;
|
||||
priv_val->cur_hdrdrc = new_params->others.drc_cfg;
|
||||
if (new_params->module_cfg_update & ISP32_MODULE_HDRMGE) {
|
||||
priv_val->last_hdrmge = priv_val->cur_hdrmge;
|
||||
priv_val->cur_hdrmge = new_params->others.hdrmge_cfg;
|
||||
}
|
||||
|
||||
if (new_params->module_cfg_update & ISP32_MODULE_DRC) {
|
||||
priv_val->last_hdrdrc = priv_val->cur_hdrdrc;
|
||||
priv_val->cur_hdrdrc = new_params->others.drc_cfg;
|
||||
}
|
||||
new_params->module_cfg_update = 0;
|
||||
vb2_buffer_done(&cur_buf->vb.vb2_buf, VB2_BUF_STATE_DONE);
|
||||
cur_buf = NULL;
|
||||
|
||||
@@ -4773,10 +4773,15 @@ rkisp_params_cfg_v3x(struct rkisp_isp_params_vdev *params_vdev,
|
||||
struct rkisp_isp_params_val_v3x *priv_val =
|
||||
(struct rkisp_isp_params_val_v3x *)params_vdev->priv_val;
|
||||
|
||||
priv_val->last_hdrmge = priv_val->cur_hdrmge;
|
||||
priv_val->last_hdrdrc = priv_val->cur_hdrdrc;
|
||||
priv_val->cur_hdrmge = new_params->others.hdrmge_cfg;
|
||||
priv_val->cur_hdrdrc = new_params->others.drc_cfg;
|
||||
if (new_params->module_cfg_update & ISP3X_MODULE_HDRMGE) {
|
||||
priv_val->last_hdrmge = priv_val->cur_hdrmge;
|
||||
priv_val->cur_hdrmge = new_params->others.hdrmge_cfg;
|
||||
}
|
||||
|
||||
if (new_params->module_cfg_update & ISP3X_MODULE_DRC) {
|
||||
priv_val->last_hdrdrc = priv_val->cur_hdrdrc;
|
||||
priv_val->cur_hdrdrc = new_params->others.drc_cfg;
|
||||
}
|
||||
new_params->module_cfg_update = 0;
|
||||
if (hw_dev->is_unite)
|
||||
(new_params++)->module_cfg_update = 0;
|
||||
|
||||
Reference in New Issue
Block a user