Lines Matching refs:iova
18 struct iova { struct
37 struct iova anchor; /* rbtree lookup anchor */
43 static inline unsigned long iova_size(struct iova *iova) in iova_size() argument
45 return iova->pfn_hi - iova->pfn_lo + 1; in iova_size()
58 static inline size_t iova_offset(struct iova_domain *iovad, dma_addr_t iova) in iova_offset() argument
60 return iova & iova_mask(iovad); in iova_offset()
68 static inline dma_addr_t iova_dma_addr(struct iova_domain *iovad, struct iova *iova) in iova_dma_addr() argument
70 return (dma_addr_t)iova->pfn_lo << iova_shift(iovad); in iova_dma_addr()
73 static inline unsigned long iova_pfn(struct iova_domain *iovad, dma_addr_t iova) in iova_pfn() argument
75 return iova >> iova_shift(iovad); in iova_pfn()
85 void __free_iova(struct iova_domain *iovad, struct iova *iova);
86 struct iova *alloc_iova(struct iova_domain *iovad, unsigned long size,
93 struct iova *reserve_iova(struct iova_domain *iovad, unsigned long pfn_lo,
98 struct iova *find_iova(struct iova_domain *iovad, unsigned long pfn);
114 static inline void __free_iova(struct iova_domain *iovad, struct iova *iova) in __free_iova() argument
118 static inline struct iova *alloc_iova(struct iova_domain *iovad, in alloc_iova()
140 static inline struct iova *reserve_iova(struct iova_domain *iovad, in reserve_iova()
153 static inline struct iova *find_iova(struct iova_domain *iovad, in find_iova()