mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 11:26:02 +09:00
media: rockchip: isp1: change list_del sequence for oops error
Change-Id: I5335a4929167736359f97acb7ff9b651260dd05e Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
This commit is contained in:
@@ -1603,16 +1603,18 @@ void rkisp1_params_isr(struct rkisp1_isp_params_vdev *params_vdev, u32 isp_mis)
|
||||
if (!list_empty(¶ms_vdev->params))
|
||||
cur_buf = list_first_entry(¶ms_vdev->params,
|
||||
struct rkisp1_buffer, queue);
|
||||
spin_unlock(¶ms_vdev->config_lock);
|
||||
|
||||
if (!cur_buf)
|
||||
if (!cur_buf) {
|
||||
spin_unlock(¶ms_vdev->config_lock);
|
||||
return;
|
||||
}
|
||||
|
||||
new_params = (struct rkisp1_isp_params_cfg *)(cur_buf->vaddr[0]);
|
||||
|
||||
if (isp_mis & CIF_ISP_FRAME) {
|
||||
u32 isp_ctrl;
|
||||
|
||||
list_del(&cur_buf->queue);
|
||||
|
||||
__isp_isr_other_config(params_vdev, new_params);
|
||||
__isp_isr_meas_config(params_vdev, new_params);
|
||||
|
||||
@@ -1621,13 +1623,10 @@ void rkisp1_params_isr(struct rkisp1_isp_params_vdev *params_vdev, u32 isp_mis)
|
||||
isp_ctrl |= CIF_ISP_CTRL_ISP_CFG_UPD;
|
||||
rkisp1_iowrite32(params_vdev, isp_ctrl, CIF_ISP_CTRL);
|
||||
|
||||
spin_lock(¶ms_vdev->config_lock);
|
||||
list_del(&cur_buf->queue);
|
||||
spin_unlock(¶ms_vdev->config_lock);
|
||||
|
||||
cur_buf->vb.sequence = cur_frame_id;
|
||||
vb2_buffer_done(&cur_buf->vb.vb2_buf, VB2_BUF_STATE_DONE);
|
||||
}
|
||||
spin_unlock(¶ms_vdev->config_lock);
|
||||
}
|
||||
|
||||
static const struct cifisp_awb_meas_config awb_params_default_config = {
|
||||
|
||||
Reference in New Issue
Block a user