Browse Source

Merge "msm: camera: mem_mgr: Add dma_buf_vunmap to cam_compat" into camera-kernel.lnx.6.0

Haritha Chintalapati 3 năm trước cách đây
mục cha
commit
c4b93c74bf

+ 1 - 1
drivers/cam_req_mgr/cam_mem_mgr.c

@@ -148,7 +148,7 @@ static int cam_mem_util_unmap_cpu_va(struct dma_buf *dmabuf,
 		return -EINVAL;
 	}
 
-	dma_buf_vunmap(dmabuf, (void *)vaddr);
+	cam_compat_util_put_dmabuf_va(dmabuf, (void *)vaddr);
 
 	/*
 	 * dma_buf_begin_cpu_access() and

+ 12 - 0
drivers/cam_utils/cam_compat.c

@@ -354,6 +354,13 @@ int cam_compat_util_get_dmabuf_va(struct dma_buf *dmabuf, uintptr_t *vaddr)
 	return error_code;
 }
 
+void cam_compat_util_put_dmabuf_va(struct dma_buf *dmabuf, void *vaddr)
+{
+	struct dma_buf_map mapping = DMA_BUF_MAP_INIT_VADDR(vaddr);
+
+	dma_buf_vunmap(dmabuf, &mapping);
+}
+
 int cam_get_ddr_type(void)
 {
 	/* We assume all chipsets running kernel version 5.15+
@@ -395,6 +402,11 @@ int cam_compat_util_get_dmabuf_va(struct dma_buf *dmabuf, uintptr_t *vaddr)
 	return error_code;
 }
 
+void cam_compat_util_put_dmabuf_va(struct dma_buf *dmabuf, void *vaddr)
+{
+	dma_buf_vunmap(dmabuf, vaddr);
+}
+
 int cam_get_ddr_type(void)
 {
 	return of_fdt_get_ddrtype();

+ 1 - 0
drivers/cam_utils/cam_compat.h

@@ -49,6 +49,7 @@ void cam_check_iommu_faults(struct iommu_domain *domain,
 	struct cam_smmu_pf_info *pf_info);
 int cam_get_ddr_type(void);
 int cam_compat_util_get_dmabuf_va(struct dma_buf *dmabuf, uintptr_t *vaddr);
+void cam_compat_util_put_dmabuf_va(struct dma_buf *dmabuf, void *vaddr);
 void cam_smmu_util_iommu_custom(struct device *dev,
 	dma_addr_t discard_start, size_t discard_length);