Lines Matching refs:iova

19 struct iova {  struct
85 struct iova anchor; /* rbtree lookup anchor */
100 static inline unsigned long iova_size(struct iova *iova) in iova_size() argument
102 return iova->pfn_hi - iova->pfn_lo + 1; in iova_size()
115 static inline size_t iova_offset(struct iova_domain *iovad, dma_addr_t iova) in iova_offset() argument
117 return iova & iova_mask(iovad); in iova_offset()
125 static inline dma_addr_t iova_dma_addr(struct iova_domain *iovad, struct iova *iova) in iova_dma_addr() argument
127 return (dma_addr_t)iova->pfn_lo << iova_shift(iovad); in iova_dma_addr()
130 static inline unsigned long iova_pfn(struct iova_domain *iovad, dma_addr_t iova) in iova_pfn() argument
132 return iova >> iova_shift(iovad); in iova_pfn()
139 struct iova *alloc_iova_mem(void);
140 void free_iova_mem(struct iova *iova);
142 void __free_iova(struct iova_domain *iovad, struct iova *iova);
143 struct iova *alloc_iova(struct iova_domain *iovad, unsigned long size,
153 struct iova *reserve_iova(struct iova_domain *iovad, unsigned long pfn_lo,
161 struct iova *find_iova(struct iova_domain *iovad, unsigned long pfn);
163 struct iova *split_and_remove_iova(struct iova_domain *iovad,
164 struct iova *iova, unsigned long pfn_lo, unsigned long pfn_hi);
176 static inline struct iova *alloc_iova_mem(void) in alloc_iova_mem()
181 static inline void free_iova_mem(struct iova *iova) in free_iova_mem() argument
189 static inline void __free_iova(struct iova_domain *iovad, struct iova *iova) in __free_iova() argument
193 static inline struct iova *alloc_iova(struct iova_domain *iovad, in alloc_iova()
221 static inline struct iova *reserve_iova(struct iova_domain *iovad, in reserve_iova()
251 static inline struct iova *find_iova(struct iova_domain *iovad, in find_iova()
261 static inline struct iova *split_and_remove_iova(struct iova_domain *iovad, in split_and_remove_iova()
262 struct iova *iova, in split_and_remove_iova() argument