From 03d235b31885b7f6e17b56ce144daec7c01837ca Mon Sep 17 00:00:00 2001 From: Cai YiWei Date: Mon, 6 Nov 2023 17:22:40 +0800 Subject: [PATCH] media: rockchip: isp: support for param run double Change-Id: I4b7d32b98762b66a322a831a2c20b23958714a07 Signed-off-by: Cai YiWei --- drivers/media/platform/rockchip/isp/isp_params.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/media/platform/rockchip/isp/isp_params.c b/drivers/media/platform/rockchip/isp/isp_params.c index 753d618847e7..03fd7fce0d7e 100644 --- a/drivers/media/platform/rockchip/isp/isp_params.c +++ b/drivers/media/platform/rockchip/isp/isp_params.c @@ -130,6 +130,11 @@ static int rkisp_params_vb2_queue_setup(struct vb2_queue *vq, INIT_LIST_HEAD(¶ms_vdev->params); + if (params_vdev->first_cfg_params) { + params_vdev->first_cfg_params = false; + return 0; + } + params_vdev->first_params = true; return 0; @@ -228,6 +233,10 @@ static void rkisp_params_vb2_stop_streaming(struct vb2_queue *vq) } spin_unlock_irqrestore(¶ms_vdev->config_lock, flags); + if (dev->is_pre_on) { + params_vdev->first_cfg_params = true; + return; + } rkisp_params_disable_isp(params_vdev); /* clean module params */ params_vdev->ops->clear_first_param(params_vdev); @@ -456,6 +465,7 @@ void rkisp_params_stream_stop(struct rkisp_isp_params_vdev *params_vdev) params_vdev->ops->stream_stop(params_vdev); if (params_vdev->ops->fop_release) params_vdev->ops->fop_release(params_vdev); + params_vdev->first_cfg_params = false; } bool rkisp_params_check_bigmode(struct rkisp_isp_params_vdev *params_vdev)