diff --git a/drivers/media/platform/rockchip/isp/common.c b/drivers/media/platform/rockchip/isp/common.c index e677eda7b0da..8654a453e6e4 100644 --- a/drivers/media/platform/rockchip/isp/common.c +++ b/drivers/media/platform/rockchip/isp/common.c @@ -98,6 +98,7 @@ int rkisp_alloc_buffer(struct rkisp_device *dev, if (dev->hw_dev->is_dma_sg_ops) { sg_tbl = (struct sg_table *)g_ops->cookie(mem_priv); buf->dma_addr = sg_dma_address(sg_tbl->sgl); + g_ops->prepare(mem_priv); } else { buf->dma_addr = *((dma_addr_t *)g_ops->cookie(mem_priv)); } diff --git a/drivers/media/platform/rockchip/ispp/common.c b/drivers/media/platform/rockchip/ispp/common.c index 14adef4b2c44..65ce74ffb689 100644 --- a/drivers/media/platform/rockchip/ispp/common.c +++ b/drivers/media/platform/rockchip/ispp/common.c @@ -90,6 +90,7 @@ int rkispp_allow_buffer(struct rkispp_device *dev, if (dev->hw_dev->is_dma_sg_ops) { sg_tbl = (struct sg_table *)g_ops->cookie(mem_priv); buf->dma_addr = sg_dma_address(sg_tbl->sgl); + g_ops->prepare(mem_priv); } else { buf->dma_addr = *((dma_addr_t *)g_ops->cookie(mem_priv)); }