From 87845a44c8f5f5f465e7e720d8b91e3b4599b99c Mon Sep 17 00:00:00 2001 From: Yu Qiaowei Date: Tue, 9 May 2023 14:52:32 +0800 Subject: [PATCH] video: rockchip: rga3: fix compile errors on stable-4.19-rv1126 Update driver version to 1.2.26 Signed-off-by: Yu Qiaowei Change-Id: I048c44201f34af5d4391b2ce097ba592b5f0b5c1 --- drivers/video/rockchip/rga3/include/rga_drv.h | 2 +- drivers/video/rockchip/rga3/rga2_reg_info.c | 2 +- drivers/video/rockchip/rga3/rga3_reg_info.c | 2 +- drivers/video/rockchip/rga3/rga_dma_buf.c | 14 ++++++-------- 4 files changed, 9 insertions(+), 11 deletions(-) diff --git a/drivers/video/rockchip/rga3/include/rga_drv.h b/drivers/video/rockchip/rga3/include/rga_drv.h index ed3508b9e69b..e42493b9bec1 100644 --- a/drivers/video/rockchip/rga3/include/rga_drv.h +++ b/drivers/video/rockchip/rga3/include/rga_drv.h @@ -87,7 +87,7 @@ #define DRIVER_MAJOR_VERISON 1 #define DRIVER_MINOR_VERSION 2 -#define DRIVER_REVISION_VERSION 25 +#define DRIVER_REVISION_VERSION 26 #define DRIVER_PATCH_VERSION #define DRIVER_VERSION (STR(DRIVER_MAJOR_VERISON) "." STR(DRIVER_MINOR_VERSION) \ diff --git a/drivers/video/rockchip/rga3/rga2_reg_info.c b/drivers/video/rockchip/rga3/rga2_reg_info.c index b1b176c9eea8..a624778bf6c3 100644 --- a/drivers/video/rockchip/rga3/rga2_reg_info.c +++ b/drivers/video/rockchip/rga3/rga2_reg_info.c @@ -2068,7 +2068,7 @@ static void rga2_soft_reset(struct rga_scheduler_t *scheduler) { u32 i; u32 reg; - u32 iommu_dte_addr; + u32 iommu_dte_addr = 0; if (scheduler->data->mmu == RGA_IOMMU) iommu_dte_addr = rga_read(RGA_IOMMU_DTE_ADDR, scheduler); diff --git a/drivers/video/rockchip/rga3/rga3_reg_info.c b/drivers/video/rockchip/rga3/rga3_reg_info.c index b73c06e29e43..f6e4345c8142 100644 --- a/drivers/video/rockchip/rga3/rga3_reg_info.c +++ b/drivers/video/rockchip/rga3/rga3_reg_info.c @@ -1626,7 +1626,7 @@ static void rga_cmd_to_rga3_cmd(struct rga_req *req_rga, struct rga3_req *req) static void rga3_soft_reset(struct rga_scheduler_t *scheduler) { u32 i; - u32 iommu_dte_addr; + u32 iommu_dte_addr = 0; if (scheduler->data->mmu == RGA_IOMMU) iommu_dte_addr = rga_read(RGA_IOMMU_DTE_ADDR, scheduler); diff --git a/drivers/video/rockchip/rga3/rga_dma_buf.c b/drivers/video/rockchip/rga3/rga_dma_buf.c index f509fe0977ab..7459d9211a01 100644 --- a/drivers/video/rockchip/rga3/rga_dma_buf.c +++ b/drivers/video/rockchip/rga3/rga_dma_buf.c @@ -206,9 +206,6 @@ static dma_addr_t rga_iommu_dma_alloc_iova(struct iommu_domain *domain, struct rga_iommu_dma_cookie *cookie = domain->iova_cookie; struct iova_domain *iovad = &cookie->iovad; unsigned long shift, iova_len, iova = 0; -#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 4, 0)) - dma_addr_t limit; -#endif shift = iova_shift(iovad); iova_len = size >> shift; @@ -231,12 +228,13 @@ static dma_addr_t rga_iommu_dma_alloc_iova(struct iommu_domain *domain, if (domain->geometry.force_aperture) dma_limit = min(dma_limit, (u64)domain->geometry.aperture_end); -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0)) - iova = alloc_iova_fast(iovad, iova_len, dma_limit >> shift, true); +#if (LINUX_VERSION_CODE > KERNEL_VERSION(4, 19, 111) && \ + LINUX_VERSION_CODE < KERNEL_VERSION(5, 4, 0)) + iova = alloc_iova_fast(iovad, iova_len, + min_t(dma_addr_t, dma_limit >> shift, iovad->end_pfn), + true); #else - limit = min_t(dma_addr_t, dma_limit >> shift, iovad->end_pfn); - - iova = alloc_iova_fast(iovad, iova_len, limit, true); + iova = alloc_iova_fast(iovad, iova_len, dma_limit >> shift, true); #endif return (dma_addr_t)iova << shift;