Home
last modified time | relevance | path

Searched refs:iovad (Results 1 - 5 of 5) sorted by relevance

/device/soc/rockchip/common/sdk_linux/include/linux/
H A Diova.h106 static inline unsigned long iova_shift(struct iova_domain *iovad) in iova_shift() argument
108 return __ffs(iovad->granule); in iova_shift()
111 static inline unsigned long iova_mask(struct iova_domain *iovad) in iova_mask() argument
113 return iovad->granule - 1; in iova_mask()
116 static inline size_t iova_offset(struct iova_domain *iovad, dma_addr_t iova) in iova_offset() argument
118 return iova & iova_mask(iovad); in iova_offset()
121 static inline size_t iova_align(struct iova_domain *iovad, size_t size) in iova_align() argument
123 return ALIGN(size, iovad->granule); in iova_align()
126 static inline dma_addr_t iova_dma_addr(struct iova_domain *iovad, struct iova *iova) in iova_dma_addr() argument
128 return (dma_addr_t)iova->pfn_lo << iova_shift(iovad); in iova_dma_addr()
131 iova_pfn(struct iova_domain *iovad, dma_addr_t iova) iova_pfn() argument
178 free_iova(struct iova_domain *iovad, unsigned long pfn) free_iova() argument
182 __free_iova(struct iova_domain *iovad, struct iova *iova) __free_iova() argument
186 alloc_iova(struct iova_domain *iovad, unsigned long size, unsigned long limit_pfn, bool size_aligned) alloc_iova() argument
192 free_iova_fast(struct iova_domain *iovad, unsigned long pfn, unsigned long size) free_iova_fast() argument
196 queue_iova(struct iova_domain *iovad, unsigned long pfn, unsigned long pages, unsigned long data) queue_iova() argument
200 alloc_iova_fast(struct iova_domain *iovad, unsigned long size, unsigned long limit_pfn, bool flush_rcache) alloc_iova_fast() argument
206 reserve_iova(struct iova_domain *iovad, unsigned long pfn_lo, unsigned long pfn_hi) reserve_iova() argument
215 init_iova_domain(struct iova_domain *iovad, unsigned long granule, unsigned long start_pfn) init_iova_domain() argument
219 has_iova_flush_queue(struct iova_domain *iovad) has_iova_flush_queue() argument
224 init_iova_flush_queue(struct iova_domain *iovad, iova_flush_cb flush_cb, iova_entry_dtor entry_dtor) init_iova_flush_queue() argument
229 find_iova(struct iova_domain *iovad, unsigned long pfn) find_iova() argument
234 put_iova_domain(struct iova_domain *iovad) put_iova_domain() 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
244 free_cpu_cached_iovas(unsigned int cpu, struct iova_domain *iovad) free_cpu_cached_iovas() argument
[all...]
/device/soc/rockchip/common/sdk_linux/drivers/iommu/
H A Ddma-iommu.c44 struct iova_domain iovad; member
57 return cookie->iovad.granule; in cookie_msi_granule()
147 if (cookie->type == IOMMU_DMA_IOVA_COOKIE && cookie->iovad.granule) { in iommu_put_dma_cookie()
148 put_iova_domain(&cookie->iovad); in iommu_put_dma_cookie()
181 struct iova_domain *iovad = &cookie->iovad; in cookie_init_hw_msi_region() local
185 start -= iova_offset(iovad, start); in cookie_init_hw_msi_region()
186 num_pages = iova_align(iovad, end - start) >> iova_shift(iovad); in cookie_init_hw_msi_region()
198 start += iovad in cookie_init_hw_msi_region()
204 iova_reserve_pci_windows(struct pci_dev *dev, struct iova_domain *iovad) iova_reserve_pci_windows() argument
251 struct iova_domain *iovad = &cookie->iovad; iova_reserve_iommu_regions() local
289 iommu_dma_flush_iotlb_all(struct iova_domain *iovad) iommu_dma_flush_iotlb_all() argument
319 struct iova_domain *iovad; iommu_dma_init_domain() local
391 struct iova_domain *iovad; iommu_dma_reserve_iova() local
419 struct iova_domain *iovad; iommu_dma_enable_best_fit_algo() local
470 struct iova_domain *iovad = &cookie->iovad; iommu_dma_alloc_iova() local
510 struct iova_domain *iovad = &cookie->iovad; iommu_dma_free_iova() local
526 struct iova_domain *iovad = &cookie->iovad; iommu_dma_unmap_ext() local
548 struct iova_domain *iovad = &cookie->iovad; iommu_dma_map_ext() local
658 struct iova_domain *iovad = &cookie->iovad; iommu_dma_alloc_remap() local
912 struct iova_domain *iovad = &cookie->iovad; iommu_dma_map_sg() local
[all...]
/device/soc/rockchip/rk3588/kernel/include/trace/hooks/
H A Diommu.h26 TP_PROTO(struct device *dev, struct iova_domain *iovad, dma_addr_t iova, size_t size),
27 TP_ARGS(dev, iovad, 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/rk3588/kernel/drivers/video/rockchip/rga3/
H A Drga_dma_buf.c368 struct iova_domain *iovad = &cookie->iovad; in rga_iommu_dma_alloc_iova() local
371 shift = iova_shift(iovad); in rga_iommu_dma_alloc_iova()
387 iova = alloc_iova_fast(iovad, iova_len, dma_limit >> shift, true); in rga_iommu_dma_alloc_iova()
395 struct iova_domain *iovad = &cookie->iovad; in rga_iommu_dma_free_iova() local
397 free_iova_fast(iovad, iova_pfn(iovad, iova), in rga_iommu_dma_free_iova()
398 size >> iova_shift(iovad)); in rga_iommu_dma_free_iova()
442 struct iova_domain *iovad; in rga_iommu_map_virt_addr() local
511 struct iova_domain *iovad; rga_viraddr_get_channel_info() local
[all...]
/device/soc/rockchip/rk3588/kernel/drivers/video/rockchip/rga3/include/
H A Drga_drv.h134 struct iova_domain iovad; member

Completed in 4 milliseconds