Lines Matching refs:iommu_domain

38 struct iommu_domain;
45 typedef int (*iommu_fault_handler_t)(struct iommu_domain *,
78 struct iommu_domain { struct
157 struct iommu_domain *(*domain_alloc)(unsigned iommu_domain_type);
158 void (*domain_free)(struct iommu_domain *);
160 int (*attach_dev)(struct iommu_domain *domain, struct device *dev);
161 void (*detach_dev)(struct iommu_domain *domain, struct device *dev);
162 int (*map)(struct iommu_domain *domain, unsigned long iova,
164 size_t (*unmap)(struct iommu_domain *domain, unsigned long iova,
166 size_t (*map_sg)(struct iommu_domain *domain, unsigned long iova,
168 phys_addr_t (*iova_to_phys)(struct iommu_domain *domain, dma_addr_t iova);
172 int (*domain_get_attr)(struct iommu_domain *domain,
174 int (*domain_set_attr)(struct iommu_domain *domain,
182 int (*domain_window_enable)(struct iommu_domain *domain, u32 wnd_nr,
184 void (*domain_window_disable)(struct iommu_domain *domain, u32 wnd_nr);
186 int (*domain_set_windows)(struct iommu_domain *domain, u32 w_count);
188 u32 (*domain_get_windows)(struct iommu_domain *domain);
208 extern struct iommu_domain *iommu_domain_alloc(struct bus_type *bus);
210 extern void iommu_domain_free(struct iommu_domain *domain);
211 extern int iommu_attach_device(struct iommu_domain *domain,
213 extern void iommu_detach_device(struct iommu_domain *domain,
215 extern struct iommu_domain *iommu_get_domain_for_dev(struct device *dev);
216 extern int iommu_map(struct iommu_domain *domain, unsigned long iova,
218 extern size_t iommu_unmap(struct iommu_domain *domain, unsigned long iova,
220 extern size_t default_iommu_map_sg(struct iommu_domain *domain, unsigned long iova,
223 extern phys_addr_t iommu_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova);
224 extern void iommu_set_fault_handler(struct iommu_domain *domain,
231 extern int iommu_attach_group(struct iommu_domain *domain,
233 extern void iommu_detach_group(struct iommu_domain *domain,
254 extern struct iommu_domain *iommu_group_default_domain(struct iommu_group *);
256 extern int iommu_domain_get_attr(struct iommu_domain *domain, enum iommu_attr,
258 extern int iommu_domain_set_attr(struct iommu_domain *domain, enum iommu_attr,
268 extern int iommu_domain_window_enable(struct iommu_domain *domain, u32 wnd_nr,
271 extern void iommu_domain_window_disable(struct iommu_domain *domain, u32 wnd_nr);
296 static inline int report_iommu_fault(struct iommu_domain *domain, in report_iommu_fault()
313 static inline size_t iommu_map_sg(struct iommu_domain *domain, in iommu_map_sg()
340 static inline struct iommu_domain *iommu_domain_alloc(struct bus_type *bus) in iommu_domain_alloc()
350 static inline void iommu_domain_free(struct iommu_domain *domain) in iommu_domain_free()
354 static inline int iommu_attach_device(struct iommu_domain *domain, in iommu_attach_device()
360 static inline void iommu_detach_device(struct iommu_domain *domain, in iommu_detach_device()
365 static inline struct iommu_domain *iommu_get_domain_for_dev(struct device *dev) in iommu_get_domain_for_dev()
370 static inline int iommu_map(struct iommu_domain *domain, unsigned long iova, in iommu_map()
376 static inline int iommu_unmap(struct iommu_domain *domain, unsigned long iova, in iommu_unmap()
382 static inline size_t iommu_map_sg(struct iommu_domain *domain, in iommu_map_sg()
389 static inline int iommu_domain_window_enable(struct iommu_domain *domain, in iommu_domain_window_enable()
396 static inline void iommu_domain_window_disable(struct iommu_domain *domain, in iommu_domain_window_disable()
401 static inline phys_addr_t iommu_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova) in iommu_iova_to_phys()
406 static inline void iommu_set_fault_handler(struct iommu_domain *domain, in iommu_set_fault_handler()
426 static inline int iommu_attach_group(struct iommu_domain *domain, in iommu_attach_group()
432 static inline void iommu_detach_group(struct iommu_domain *domain, in iommu_detach_group()
502 static inline int iommu_domain_get_attr(struct iommu_domain *domain, in iommu_domain_get_attr()
508 static inline int iommu_domain_set_attr(struct iommu_domain *domain, in iommu_domain_set_attr()