From 7d9d60111da789810fbaeb49c64b3a14a0f3d99d Mon Sep 17 00:00:00 2001 From: Zefa Chen Date: Wed, 12 Apr 2023 10:00:35 +0800 Subject: [PATCH] media: rockchip: vicap: rv1106 support to stop dma capture when not active buffer Signed-off-by: Zefa Chen Change-Id: Ia60a4806fd738c9884741d1e1172ebaa9bb75363 --- drivers/media/platform/rockchip/cif/capture.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/media/platform/rockchip/cif/capture.c b/drivers/media/platform/rockchip/cif/capture.c index fb3c64c09ffd..411e912c2124 100644 --- a/drivers/media/platform/rockchip/cif/capture.c +++ b/drivers/media/platform/rockchip/cif/capture.c @@ -3888,7 +3888,7 @@ static void rkcif_check_buffer_update_pingpong(struct rkcif_stream *stream, stream->to_stop_dma = 0; wake_up(&stream->wq_stopped); } else { - stream->to_en_dma = true; + stream->to_en_dma = RKCIF_DMAEN_BY_VICAP; } } if (stream->lack_buf_cnt) @@ -8148,11 +8148,11 @@ static void rkcif_update_stream(struct rkcif_device *cif_dev, ret = rkcif_assign_new_buffer_pingpong(stream, RKCIF_YUV_ADDR_STATE_UPDATE, mipi_id); - if (ret) + if (ret && cif_dev->chip_id != CHIP_RV1106_CIF) return; } else { ret = rkcif_update_new_buffer_wake_up_mode(stream); - if (ret) + if (ret && cif_dev->chip_id != CHIP_RV1106_CIF) return; } if (!stream->is_line_wake_up && stream->dma_en & RKCIF_DMAEN_BY_VICAP)