diff --git a/drivers/staging/media/rkisp1/rkisp1-params.c b/drivers/staging/media/rkisp1/rkisp1-params.c index 85f3b340c3bf..8bd7cc622e4f 100644 --- a/drivers/staging/media/rkisp1/rkisp1-params.c +++ b/drivers/staging/media/rkisp1/rkisp1-params.c @@ -1198,16 +1198,14 @@ void rkisp1_params_isr(struct rkisp1_device *rkisp1) return; } - /* get one empty buffer */ - if (!list_empty(¶ms->params)) - cur_buf = list_first_entry(¶ms->params, - struct rkisp1_buffer, queue); - - if (!cur_buf) { + if (list_empty(¶ms->params)) { spin_unlock(¶ms->config_lock); return; } + cur_buf = list_first_entry(¶ms->params, + struct rkisp1_buffer, queue); + new_params = (struct rkisp1_params_cfg *)(cur_buf->vaddr); rkisp1_isp_isr_other_config(params, new_params);