/device/soc/rockchip/common/sdk_linux/include/linux/ |
H A D | iova.h | 18 /* iova structure */ 19 struct iova { struct 67 /* holds all the iova translations for a domain */ 70 struct rb_root rbroot; /* iova domain rbtree root */ 85 struct iova anchor; /* rbtree lookup anchor */ 92 iova entry */ 101 static inline unsigned long iova_size(struct iova *iova) in iova_size() argument 103 return iova->pfn_hi - iova in iova_size() 116 iova_offset(struct iova_domain *iovad, dma_addr_t iova) iova_offset() argument 126 iova_dma_addr(struct iova_domain *iovad, struct iova *iova) iova_dma_addr() argument 131 iova_pfn(struct iova_domain *iovad, dma_addr_t iova) iova_pfn() argument 174 free_iova_mem(struct iova *iova) free_iova_mem() argument 182 __free_iova(struct iova_domain *iovad, struct iova *iova) __free_iova() argument 238 split_and_remove_iova(struct iova_domain *iovad, struct iova *iova, unsigned long pfn_lo, unsigned long pfn_hi) split_and_remove_iova() argument [all...] |
H A D | iommu.h | 222 * @iova_to_phys: translate iova to physical address 232 * @apply_resv_region: Temporary helper call-back for iova reserved ranges 266 int (*map)(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size, int prot, gfp_t gfp); 267 int (*map_pages)(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t pgsize, size_t pgcount, 269 int (*map_sg)(struct iommu_domain *domain, unsigned long iova, struct scatterlist *sg, unsigned int nents, int prot, 271 size_t (*unmap)(struct iommu_domain *domain, unsigned long iova, size_t size, 273 size_t (*unmap_pages)(struct iommu_domain *domain, unsigned long iova, size_t pgsize, size_t pgcount, 276 void (*iotlb_sync_map)(struct iommu_domain *domain, unsigned long iova, size_t size); 278 phys_addr_t (*iova_to_phys)(struct iommu_domain *domain, dma_addr_t iova); 447 extern int iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_ 518 iommu_iotlb_gather_add_page(struct iommu_domain *domain, struct iommu_iotlb_gather *gather, unsigned long iova, size_t size) iommu_iotlb_gather_add_page() argument 682 iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size, int prot) iommu_map() argument 687 iommu_map_atomic(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size, int prot) iommu_map_atomic() argument 693 iommu_unmap(struct iommu_domain *domain, unsigned long iova, size_t size) iommu_unmap() argument 698 iommu_unmap_fast(struct iommu_domain *domain, unsigned long iova, int gfp_order, struct iommu_iotlb_gather *iotlb_gather) iommu_unmap_fast() argument 704 iommu_map_sg(struct iommu_domain *domain, unsigned long iova, struct scatterlist *sg, unsigned int nents, int prot) iommu_map_sg() argument 710 iommu_map_sg_atomic(struct iommu_domain *domain, unsigned long iova, struct scatterlist *sg, unsigned int nents, int prot) iommu_map_sg_atomic() argument 734 iommu_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova) iommu_iova_to_phys() argument 888 iommu_iotlb_gather_add_page(struct iommu_domain *domain, struct iommu_iotlb_gather *gather, unsigned long iova, size_t size) iommu_iotlb_gather_add_page() argument 1028 iommu_map_sgtable(struct iommu_domain *domain, unsigned long iova, struct sg_table *sgt, int prot) iommu_map_sgtable() argument [all...] |
H A D | rockchip-iovmm.h | 57 static inline void rockchip_iovmm_unmap(struct device *dev, dma_addr_t iova) in rockchip_iovmm_unmap() argument
|
/device/soc/rockchip/rk3588/kernel/include/trace/hooks/ |
H A D | iommu.h | 20 TP_PROTO(struct device *dev, dma_addr_t iova, size_t size), 21 TP_ARGS(dev, iova, size)); 26 TP_PROTO(struct device *dev, struct iova_domain *iovad, dma_addr_t iova, size_t size), 27 TP_ARGS(dev, iovad, iova, size)); 30 TP_PROTO(dma_addr_t iova, size_t size), 31 TP_ARGS(iova, size)); 34 TP_PROTO(struct iova_domain *iovad, dma_addr_t iova, size_t size), 35 TP_ARGS(iovad, iova, size));
|
/device/soc/rockchip/common/vendor/drivers/video/rockchip/mpp/hack/ |
H A D | mpp_rkvdec2_link_hack_rk3568.c | 191 u32 iova = fix->iova;
in rkvdec2_link_hack_data_setup() local 195 rkvdec2_3568_hack_link[0x48] = iova;
in rkvdec2_link_hack_data_setup() 197 rkvdec2_3568_hack_link[0x49] = iova + RKDEC_HACK_DATA_RLC_OFFSET;
in rkvdec2_link_hack_data_setup() 199 rkvdec2_3568_hack_link[0x4a] = iova + RKDEC_HACK_DATA_OUT_OFFSET;
in rkvdec2_link_hack_data_setup() 201 rkvdec2_3568_hack_link[0x4b] = iova + 0x80 * 0x6;
in rkvdec2_link_hack_data_setup() 203 rkvdec2_3568_hack_link[0x4c] = iova + 0x80 * 0x4;
in rkvdec2_link_hack_data_setup() 205 rkvdec2_3568_hack_link[0x59] = iova + RKDEC_HACK_DATA_PPS_OFFSET;
in rkvdec2_link_hack_data_setup() 207 rkvdec2_3568_hack_link[0x5b] = iova + RKDEC_HACK_DATA_RPS_OFFSET;
in rkvdec2_link_hack_data_setup() 209 rkvdec2_3568_hack_link[0x5c + i] = iova in rkvdec2_link_hack_data_setup() [all...] |
/device/soc/rockchip/rk3588/kernel/drivers/video/rockchip/mpp/ |
H A D | mpp_rkvdec2_link_hack_rk3568.c | 191 u32 iova = fix->iova; in rkvdec2_link_hack_data_setup() local 195 rkvdec2_3568_hack_link[72] = iova; in rkvdec2_link_hack_data_setup() 197 rkvdec2_3568_hack_link[73] = iova + RKDEC_HACK_DATA_RLC_OFFSET; in rkvdec2_link_hack_data_setup() 199 rkvdec2_3568_hack_link[74] = iova + RKDEC_HACK_DATA_OUT_OFFSET; in rkvdec2_link_hack_data_setup() 201 rkvdec2_3568_hack_link[75] = iova + 128 * 6; in rkvdec2_link_hack_data_setup() 203 rkvdec2_3568_hack_link[76] = iova + 128 * 4; in rkvdec2_link_hack_data_setup() 206 rkvdec2_3568_hack_link[89] = iova + RKDEC_HACK_DATA_PPS_OFFSET; in rkvdec2_link_hack_data_setup() 208 rkvdec2_3568_hack_link[91] = iova + RKDEC_HACK_DATA_RPS_OFFSET; in rkvdec2_link_hack_data_setup() 210 rkvdec2_3568_hack_link[92 + i] = iova in rkvdec2_link_hack_data_setup() [all...] |
H A D | mpp_iommu.c | 132 dma_addr_t iova; in mpp_dma_alloc() local 140 buffer->vaddr = dma_alloc_coherent(dev, align_size, &iova, GFP_KERNEL); in mpp_dma_alloc() 145 buffer->iova = iova; in mpp_dma_alloc() 157 buffer->vaddr, buffer->iova); in mpp_dma_free() 159 buffer->iova = 0; in mpp_dma_free() 230 buffer->iova = sg_dma_address(sgt->sgl); in mpp_dma_import_fd()
|
H A D | mpp_vdpu1.c | 254 dma_addr_t iova = 0; in vdpu_process_reg_fd() local 269 iova = mem_region->iova; in vdpu_process_reg_fd() 271 idx, fd, &iova, offset); in vdpu_process_reg_fd() 272 task->reg[idx] = iova + offset; in vdpu_process_reg_fd()
|
H A D | mpp_vdpu2.c | 215 dma_addr_t iova = 0; in vdpu_process_reg_fd() local 230 iova = mem_region->iova; in vdpu_process_reg_fd() 232 idx, fd, &iova, offset); in vdpu_process_reg_fd() 233 task->reg[idx] = iova + offset; in vdpu_process_reg_fd()
|
H A D | mpp_rkvdec2.c | 971 dma_addr_t iova; in rkvdec2_alloc_rcbbuf() local 979 /* get rcb iova start and size */ in rkvdec2_alloc_rcbbuf() 980 ret = device_property_read_u32_array(dev, "rockchip,rcb-iova", vals, 2); in rkvdec2_alloc_rcbbuf() 982 dev_err(dev, "could not find property rcb-iova\n"); in rkvdec2_alloc_rcbbuf() 985 iova = PAGE_ALIGN(vals[0]); in rkvdec2_alloc_rcbbuf() 991 /* alloc reserve iova for rcb */ in rkvdec2_alloc_rcbbuf() 992 ret = iommu_dma_reserve_iova(dev, iova, rcb_size); in rkvdec2_alloc_rcbbuf() 994 dev_err(dev, "alloc rcb iova error.\n"); in rkvdec2_alloc_rcbbuf() 1020 /* iova map to sram */ in rkvdec2_alloc_rcbbuf() 1022 ret = iommu_map(domain, iova, sram_star in rkvdec2_alloc_rcbbuf() [all...] |
H A D | mpp_common.c | 1194 data[i] = (u32)buffer->iova; in mpp_process_request() 1195 mpp_debug(DEBUG_IOMMU, "fd %d => iova %08x\n", in mpp_process_request() 1429 mem_region->iova = buffer->iova; in mpp_task_attach_fd() 1486 tbl[i], usr_fd, &mem_region->iova, in mpp_translate_reg_address() 1489 reg[tbl[i]] = mem_region->iova + offset; in mpp_translate_reg_address() 1661 mem->reg_idx, &mem->iova, mem->len); in mpp_task_dump_mem_region() 1719 unsigned long iova, in mpp_iommu_handle() 1734 dev_err(mpp->dev, "fault addr 0x%08lx status %x\n", iova, status); in mpp_iommu_handle() 1740 mpp->iommu_info->hdl(iommu, iommu_dev, iova, statu in mpp_iommu_handle() 1717 mpp_iommu_handle(struct iommu_domain *iommu, struct device *iommu_dev, unsigned long iova, int status, void *arg) mpp_iommu_handle() argument [all...] |
H A D | mpp_iommu.h | 30 dma_addr_t iova; member
|
/device/soc/rockchip/rk3588/kernel/drivers/video/rockchip/mpp/hack/ |
H A D | mpp_rkvdec2_link_hack_rk3568.c | 191 u32 iova = fix->iova; in rkvdec2_link_hack_data_setup() local 195 rkvdec2_3568_hack_link[72] = iova; in rkvdec2_link_hack_data_setup() 197 rkvdec2_3568_hack_link[73] = iova + RKDEC_HACK_DATA_RLC_OFFSET; in rkvdec2_link_hack_data_setup() 199 rkvdec2_3568_hack_link[74] = iova + RKDEC_HACK_DATA_OUT_OFFSET; in rkvdec2_link_hack_data_setup() 201 rkvdec2_3568_hack_link[75] = iova + 128 * 6; in rkvdec2_link_hack_data_setup() 203 rkvdec2_3568_hack_link[76] = iova + 128 * 4; in rkvdec2_link_hack_data_setup() 206 rkvdec2_3568_hack_link[89] = iova + RKDEC_HACK_DATA_PPS_OFFSET; in rkvdec2_link_hack_data_setup() 208 rkvdec2_3568_hack_link[91] = iova + RKDEC_HACK_DATA_RPS_OFFSET; in rkvdec2_link_hack_data_setup() 210 rkvdec2_3568_hack_link[92 + i] = iova in rkvdec2_link_hack_data_setup() [all...] |
/device/soc/rockchip/common/sdk_linux/drivers/iommu/ |
H A D | rockchip-iommu.c | 350 * rk3288 iova (IOMMU Virtual Address) format
366 static u32 rk_iova_dte_index(dma_addr_t iova)
in rk_iova_dte_index() argument 368 return (u32)(iova & RK_IOVA_DTE_MASK) >> RK_IOVA_DTE_SHIFT;
in rk_iova_dte_index() 371 static u32 rk_iova_pte_index(dma_addr_t iova)
in rk_iova_pte_index() argument 373 return (u32)(iova & RK_IOVA_PTE_MASK) >> RK_IOVA_PTE_SHIFT;
in rk_iova_pte_index() 376 static u32 rk_iova_page_offset(dma_addr_t iova)
in rk_iova_page_offset() argument 378 return (u32)(iova & RK_IOVA_PAGE_MASK) >> RK_IOVA_PAGE_SHIFT;
in rk_iova_page_offset() 413 dma_addr_t iova;
in rk_iommu_zap_lines() local 415 for (iova = iova_start; iova < iova_en in rk_iommu_zap_lines() 665 log_iova(struct rk_iommu *iommu, int index, dma_addr_t iova) log_iova() argument 730 dma_addr_t iova; rk_iommu_irq() local 805 rk_iommu_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova) rk_iommu_iova_to_phys() argument 834 rk_iommu_iova_to_phys_v2(struct iommu_domain *domain, dma_addr_t iova) rk_iommu_iova_to_phys_v2() argument 863 rk_iommu_zap_iova(struct rk_iommu_domain *rk_domain, dma_addr_t iova, size_t size) rk_iommu_zap_iova() argument 892 rk_iommu_zap_iova_first_last(struct rk_iommu_domain *rk_domain, dma_addr_t iova, size_t size) rk_iommu_zap_iova_first_last() argument 900 rk_dte_get_page_table(struct rk_iommu_domain *rk_domain, dma_addr_t iova) rk_dte_get_page_table() argument 938 rk_dte_get_page_table_v2(struct rk_iommu_domain *rk_domain, dma_addr_t iova) rk_dte_get_page_table_v2() argument 997 rk_iommu_map_iova(struct rk_iommu_domain *rk_domain, u32 *pte_addr, dma_addr_t pte_dma, dma_addr_t iova, phys_addr_t paddr, size_t size, int prot) rk_iommu_map_iova() argument 1043 rk_iommu_map_iova_v2(struct rk_iommu_domain *rk_domain, u32 *pte_addr, dma_addr_t pte_dma, dma_addr_t iova, phys_addr_t paddr, size_t size, int prot) rk_iommu_map_iova_v2() argument 1094 dma_addr_t pte_dma, iova = (dma_addr_t)_iova; rk_iommu_map() local 1130 dma_addr_t pte_dma, iova = (dma_addr_t)_iova; rk_iommu_map_v2() local 1166 dma_addr_t pte_dma, iova = (dma_addr_t)_iova; rk_iommu_unmap() local 1206 dma_addr_t pte_dma, iova = (dma_addr_t)_iova; rk_iommu_unmap_v2() local [all...] |
H A D | dma-iommu.c | 18 #include <linux/iova.h> 31 dma_addr_t iova; member 195 msi_page->iova = start; in cookie_init_hw_msi_region() 356 pr_warn("iova flush queue initialization failed\n"); in iommu_dma_init_domain() 402 /* iova will be freed automatically by put_iova_domain() */ in iommu_dma_reserve_iova() 471 unsigned long shift, iova_len, iova = 0; in iommu_dma_alloc_iova() local 498 iova = alloc_iova_fast(iovad, iova_len, DMA_BIT_MASK(DMA_IOMMU_BIT_MASK_VALUE) >> shift, false); in iommu_dma_alloc_iova() 501 if (!iova) { in iommu_dma_alloc_iova() 502 iova = alloc_iova_fast(iovad, iova_len, dma_limit >> shift, true); in iommu_dma_alloc_iova() 505 return (dma_addr_t)iova << shif in iommu_dma_alloc_iova() 508 iommu_dma_free_iova(struct iommu_dma_cookie *cookie, dma_addr_t iova, size_t size) iommu_dma_free_iova() argument 550 dma_addr_t iova; iommu_dma_map_ext() local 664 dma_addr_t iova; iommu_dma_alloc_remap() local 915 dma_addr_t iova; iommu_dma_map_sg() local 1285 dma_addr_t iova; iommu_dma_get_msi_page() local [all...] |
H A D | iommu.c | 2388 phys_addr_t iommu_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova)
in iommu_iova_to_phys() argument 2394 return domain->ops->iova_to_phys(domain, iova);
in iommu_iova_to_phys() 2398 static size_t iommu_pgsize(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size,
in iommu_pgsize() argument 2404 unsigned long addr_merge = paddr | iova;
in iommu_pgsize() 2430 if ((iova ^ paddr) & (pgsize_next - 1)) {
in iommu_pgsize() 2448 static int iommu_map_pages_ext(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size,
in iommu_map_pages_ext() argument 2455 pgsize = iommu_pgsize(domain, iova, paddr, size, &count);
in iommu_map_pages_ext() 2457 pr_debug("mapping: iova 0x%lx pa %pa pgsize 0x%zx count %zu\n", iova, &paddr, pgsize, count);
in iommu_map_pages_ext() 2460 ret = ops->map_pages(domain, iova, padd in iommu_map_pages_ext() 2469 iommu_map_ext(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size, int prot, gfp_t gfp) iommu_map_ext() argument 2529 _iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size, int prot, gfp_t gfp) _iommu_map() argument 2543 iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size, int prot) iommu_map() argument 2550 iommu_map_atomic(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size, int prot) iommu_map_atomic() argument 2556 iommu_unmap_pages_ext(struct iommu_domain *domain, unsigned long iova, size_t size, struct iommu_iotlb_gather *iotlb_gather) iommu_unmap_pages_ext() argument 2567 iommu_unmap_ext(struct iommu_domain *domain, unsigned long iova, size_t size, struct iommu_iotlb_gather *iotlb_gather) iommu_unmap_ext() argument 2616 iommu_unmap(struct iommu_domain *domain, unsigned long iova, size_t size) iommu_unmap() argument 2629 iommu_unmap_fast(struct iommu_domain *domain, unsigned long iova, size_t size, struct iommu_iotlb_gather *iotlb_gather) iommu_unmap_fast() argument 2636 iommu_map_sg_ext(struct iommu_domain *domain, unsigned long iova, struct scatterlist *sg, unsigned int nents, int prot, gfp_t gfp) iommu_map_sg_ext() argument 2702 iommu_map_sg(struct iommu_domain *domain, unsigned long iova, struct scatterlist *sg, unsigned int nents, int prot) iommu_map_sg() argument 2710 iommu_map_sg_atomic(struct iommu_domain *domain, unsigned long iova, struct scatterlist *sg, unsigned int nents, int prot) iommu_map_sg_atomic() argument 2761 report_iommu_fault(struct iommu_domain *domain, struct device *dev, unsigned long iova, int flags) report_iommu_fault() argument [all...] |
/device/soc/rockchip/rk3588/kernel/drivers/video/rockchip/rga3/ |
H A D | rga_dma_buf.c | 369 unsigned long shift, iova_len, iova = 0; in rga_iommu_dma_alloc_iova() local 387 iova = alloc_iova_fast(iovad, iova_len, dma_limit >> shift, true); in rga_iommu_dma_alloc_iova() 389 return (dma_addr_t)iova << shift; in rga_iommu_dma_alloc_iova() 393 dma_addr_t iova, size_t size) in rga_iommu_dma_free_iova() 397 free_iova_fast(iovad, iova_pfn(iovad, iova), in rga_iommu_dma_free_iova() 412 iommu_unmap(buffer->domain, buffer->iova, buffer->size); in rga_viraddr_put_channel_info() 413 rga_iommu_dma_free_iova(buffer->cookie, buffer->iova, buffer->size); in rga_viraddr_put_channel_info() 424 if (virt_dma_buf->iova == 0) in rga_iommu_unmap_virt_addr() 427 iommu_unmap(virt_dma_buf->domain, virt_dma_buf->iova, virt_dma_buf->size); in rga_iommu_unmap_virt_addr() 428 rga_iommu_dma_free_iova(virt_dma_buf->cookie, virt_dma_buf->iova, virt_dma_bu in rga_iommu_unmap_virt_addr() 392 rga_iommu_dma_free_iova(struct rga_iommu_dma_cookie *cookie, dma_addr_t iova, size_t size) rga_iommu_dma_free_iova() argument 443 dma_addr_t iova; rga_iommu_map_virt_addr() local 514 dma_addr_t iova; rga_viraddr_get_channel_info() local [all...] |
/device/soc/rockchip/common/vendor/drivers/video/rockchip/mpp/ |
H A D | mpp_iommu.c | 127 dma_addr_t iova; in mpp_dma_alloc() local 136 buffer->vaddr = dma_alloc_coherent(dev, align_size, &iova, GFP_KERNEL); in mpp_dma_alloc() 142 buffer->iova = iova; in mpp_dma_alloc() 153 dma_free_coherent(buffer->dev, buffer->size, buffer->vaddr, buffer->iova); in mpp_dma_free() 155 buffer->iova = 0; in mpp_dma_free() 222 buffer->iova = sg_dma_address(sgt->sgl); in mpp_dma_import_fd()
|
H A D | mpp_vdpu2.c | 210 dma_addr_t iova = 0;
in vdpu_process_reg_fd() local 226 iova = mem_region->iova;
in vdpu_process_reg_fd() 227 mpp_debug(DEBUG_IOMMU, "DMV[%3d]: %3d => %pad + offset %10d\n", idx, fd, &iova, offset);
in vdpu_process_reg_fd() 228 task->reg[idx] = iova + offset;
in vdpu_process_reg_fd()
|
H A D | mpp_rkvdec2.c | 972 dma_addr_t iova;
in rkvdec2_alloc_rcbbuf() local 980 /* get rcb iova start and size */
in rkvdec2_alloc_rcbbuf() 981 ret = device_property_read_u32_array(dev, "rockchip,rcb-iova", vals, 0X2);
in rkvdec2_alloc_rcbbuf() 983 dev_err(dev, "could not find property rcb-iova\n");
in rkvdec2_alloc_rcbbuf() 986 iova = PAGE_ALIGN(vals[0]);
in rkvdec2_alloc_rcbbuf() 992 /* alloc reserve iova for rcb */
in rkvdec2_alloc_rcbbuf() 993 ret = iommu_dma_reserve_iova(dev, iova, rcb_size);
in rkvdec2_alloc_rcbbuf() 995 dev_err(dev, "alloc rcb iova error.\n");
in rkvdec2_alloc_rcbbuf() 1020 /* iova map to sram */
in rkvdec2_alloc_rcbbuf() 1022 ret = iommu_map(domain, iova, sram_star in rkvdec2_alloc_rcbbuf() [all...] |
H A D | mpp_vdpu1.c | 247 dma_addr_t iova = 0;
in vdpu_process_reg_fd() local 263 iova = mem_region->iova;
in vdpu_process_reg_fd() 264 mpp_debug(DEBUG_IOMMU, "DMV[%3d]: %3d => %pad + offset %10d\n", idx, fd, &iova, offset);
in vdpu_process_reg_fd() 265 task->reg[idx] = iova + offset;
in vdpu_process_reg_fd()
|
H A D | mpp_common.c | 1167 data[i] = (u32)buffer->iova;
in mpp_process_request() 1168 mpp_debug(DEBUG_IOMMU, "fd %d => iova %08x\n", fd, data[i]);
in mpp_process_request() 1401 mem_region->iova = buffer->iova;
in mpp_task_attach_fd() 1455 mpp_debug(DEBUG_IOMMU, "reg[%3d]: %d => %pad, offset %10d, size %lx\n", tbl[i], usr_fd, &mem_region->iova,
in mpp_translate_reg_address() 1458 reg[tbl[i]] = mem_region->iova + offset;
in mpp_translate_reg_address() 1613 mpp_err("reg[%3d]: %pad, size %lx\n", mem->reg_idx, &mem->iova, mem->len);
in mpp_task_dump_mem_region() 1668 static int mpp_iommu_handle(struct iommu_domain *iommu, struct device *iommu_dev, unsigned long iova, int status,
in mpp_iommu_handle() argument 1684 dev_err(mpp->dev, "fault addr 0x%08lx status %x\n", iova, status);
in mpp_iommu_handle() 1690 mpp->iommu_info->hdl(iommu, iommu_dev, iova, statu in mpp_iommu_handle() [all...] |
H A D | mpp_iommu.h | 30 dma_addr_t iova; member
|
H A D | mpp_rkvdec.c | 565 tmp = mem_region->iova & 0xffffffff;
in fill_scaling_list_pps() 568 &mem_region->iova, offset);
in fill_scaling_list_pps() 670 dma_addr_t iova = 0;
in rkvdec_process_reg_fd() local 686 iova = mem_region->iova;
in rkvdec_process_reg_fd() 687 task->reg[idx] = iova + offset;
in rkvdec_process_reg_fd() 1211 static int rkvdec_3328_iommu_hdl(struct iommu_domain *iommu, struct device *iommu_dev, unsigned long iova, int status,
in rkvdec_3328_iommu_hdl() argument 1230 page_iova = round_down(iova, IOMMU_PAGE_SIZE);
in rkvdec_3328_iommu_hdl()
|
/device/soc/rockchip/rk3588/kernel/drivers/video/rockchip/rga3/include/ |
H A D | rga_drv.h | 51 #include <linux/iova.h> 147 dma_addr_t iova; member 182 dma_addr_t iova; member
|