From 98d0bc3b25a87f93f3f622885ffe8471312b7d79 Mon Sep 17 00:00:00 2001 From: Cai YiWei Date: Mon, 21 Mar 2022 23:12:10 +0800 Subject: [PATCH] media: rockchip: isp/ispp fix using of vb2_cma_sg Signed-off-by: Cai YiWei Change-Id: I564e64f93946c45f7295899fc97cab63b6ec8487 --- drivers/media/platform/rockchip/isp/dmarx.c | 2 ++ drivers/media/platform/rockchip/ispp/stats.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/media/platform/rockchip/isp/dmarx.c b/drivers/media/platform/rockchip/isp/dmarx.c index f1747a9b17c3..dda46feeb4ed 100644 --- a/drivers/media/platform/rockchip/isp/dmarx.c +++ b/drivers/media/platform/rockchip/isp/dmarx.c @@ -680,6 +680,8 @@ static int rkisp_init_vb2_queue(struct vb2_queue *q, q->allow_cache_hints = 1; q->bidirectional = 1; q->gfp_flags = GFP_DMA32; + if (stream->ispdev->hw_dev->is_dma_contig) + q->dma_attrs = DMA_ATTR_FORCE_CONTIGUOUS; return vb2_queue_init(q); } diff --git a/drivers/media/platform/rockchip/ispp/stats.c b/drivers/media/platform/rockchip/ispp/stats.c index df011710b1aa..0b0a2cff271e 100644 --- a/drivers/media/platform/rockchip/ispp/stats.c +++ b/drivers/media/platform/rockchip/ispp/stats.c @@ -211,7 +211,7 @@ static void rkispp_stats_vb2_buf_queue(struct vb2_buffer *vb) unsigned long lock_flags = 0; vb2_plane_vaddr(vb, 0); - if (stats_dev->dev->hw_dev->is_mmu) { + if (stats_dev->dev->hw_dev->is_dma_sg_ops) { struct sg_table *sgt = vb2_dma_sg_plane_desc(vb, 0); buf->buff_addr[0] = sg_dma_address(sgt->sgl);