Lines Matching defs:iova
9 #include <linux/iova.h>
21 struct iova **iovap,
24 struct iova *iova;
30 size = iova_align(&vde->iova, size);
31 shift = iova_shift(&vde->iova);
33 iova = alloc_iova(&vde->iova, size >> shift, end >> shift, true);
34 if (!iova)
37 addr = iova_dma_addr(&vde->iova, iova);
42 __free_iova(&vde->iova, iova);
46 *iovap = iova;
51 void tegra_vde_iommu_unmap(struct tegra_vde *vde, struct iova *iova)
53 unsigned long shift = iova_shift(&vde->iova);
54 unsigned long size = iova_size(iova) << shift;
55 dma_addr_t addr = iova_dma_addr(&vde->iova, iova);
58 __free_iova(&vde->iova, iova);
64 struct iova *iova;
92 init_iova_domain(&vde->iova, 1UL << order, 0);
102 shift = iova_shift(&vde->iova);
103 iova = reserve_iova(&vde->iova, 0x60000000 >> shift,
105 if (!iova) {
110 vde->iova_resv_static_addresses = iova;
118 iova = reserve_iova(&vde->iova, 0xffffffff >> shift,
120 if (!iova) {
125 vde->iova_resv_last_page = iova;
130 __free_iova(&vde->iova, vde->iova_resv_static_addresses);
134 put_iova_domain(&vde->iova);
147 __free_iova(&vde->iova, vde->iova_resv_last_page);
148 __free_iova(&vde->iova, vde->iova_resv_static_addresses);
150 put_iova_domain(&vde->iova);