From ff6946b2c18e2091fa0ccafae8839bc68c81de47 Mon Sep 17 00:00:00 2001 From: Cai YiWei Date: Thu, 14 Jul 2022 17:07:48 +0800 Subject: [PATCH] media: rockchip: isp: match stream info for fast output Change-Id: I62029e1f98eb826ee9754ff7efa294fea5a11e7f Signed-off-by: Cai YiWei --- drivers/media/platform/rockchip/isp/capture.h | 1 + drivers/media/platform/rockchip/isp/capture_v32.c | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/media/platform/rockchip/isp/capture.h b/drivers/media/platform/rockchip/isp/capture.h index 058f58693728..93c46344cc38 100644 --- a/drivers/media/platform/rockchip/isp/capture.h +++ b/drivers/media/platform/rockchip/isp/capture.h @@ -281,6 +281,7 @@ struct rkisp_stream { bool is_crop_upd; bool is_pre_on; bool is_using_resmem; + bool is_tb_s_info; wait_queue_head_t done; unsigned int burst; atomic_t sequence; diff --git a/drivers/media/platform/rockchip/isp/capture_v32.c b/drivers/media/platform/rockchip/isp/capture_v32.c index f7379fd916f0..05f66544e0c7 100644 --- a/drivers/media/platform/rockchip/isp/capture_v32.c +++ b/drivers/media/platform/rockchip/isp/capture_v32.c @@ -809,6 +809,7 @@ static void update_mi(struct rkisp_stream *stream) if (dev->tb_addr_idx < dev->tb_stream_info.buf_max - 1) dev->tb_addr_idx++; + stream->is_tb_s_info = true; } else if (!stream->is_pause) { stream->is_pause = true; stream->ops->disable_mi(stream); @@ -1755,7 +1756,7 @@ void rkisp_mi_v32_isr(u32 mis_val, struct rkisp_device *dev) stream->dbg.timestamp = ns; stream->dbg.id = seq; - if (stream->is_using_resmem) { + if (stream->is_tb_s_info) { struct rkisp_tb_stream_info *tb_info = &dev->tb_stream_info; u32 idx; @@ -1764,6 +1765,7 @@ void rkisp_mi_v32_isr(u32 mis_val, struct rkisp_device *dev) idx = tb_info->buf_cnt - 1; dev->tb_stream_info.buf[idx].sequence = seq; dev->tb_stream_info.buf[idx].timestamp = ns; + stream->is_tb_s_info = false; } if (stream->stopping) {