Lines Matching refs:ops
41 const struct iommu_ops *ops; member
737 const struct iommu_ops *ops = cb->ops; in add_iommu_group() local
739 if (!ops->add_device) in add_iommu_group()
744 ops->add_device(dev); in add_iommu_group()
753 const struct iommu_ops *ops = dev->bus->iommu_ops; in iommu_bus_notifier() local
762 if (ops->add_device) in iommu_bus_notifier()
763 return ops->add_device(dev); in iommu_bus_notifier()
765 if (ops->remove_device && dev->iommu_group) { in iommu_bus_notifier()
766 ops->remove_device(dev); in iommu_bus_notifier()
802 static int iommu_bus_init(struct bus_type *bus, const struct iommu_ops *ops) in iommu_bus_init() argument
807 .ops = ops, in iommu_bus_init()
845 int bus_set_iommu(struct bus_type *bus, const struct iommu_ops *ops) in bus_set_iommu() argument
852 bus->iommu_ops = ops; in bus_set_iommu()
855 err = iommu_bus_init(bus, ops); in bus_set_iommu()
912 domain->ops = bus->iommu_ops; in iommu_domain_alloc()
921 domain->ops->domain_free(domain); in iommu_domain_free()
928 if (unlikely(domain->ops->attach_dev == NULL)) in iommu_attach_device()
931 ret = domain->ops->attach_dev(domain, dev); in iommu_attach_device()
940 if (unlikely(domain->ops->detach_dev == NULL)) in iommu_detach_device()
943 domain->ops->detach_dev(domain, dev); in iommu_detach_device()
989 if (unlikely(domain->ops->iova_to_phys == NULL)) in iommu_iova_to_phys()
992 return domain->ops->iova_to_phys(domain, iova); in iommu_iova_to_phys()
1016 pgsize &= domain->ops->pgsize_bitmap; in iommu_pgsize()
1036 if (unlikely(domain->ops->map == NULL || in iommu_map()
1037 domain->ops->pgsize_bitmap == 0UL)) in iommu_map()
1044 min_pagesz = 1 << __ffs(domain->ops->pgsize_bitmap); in iommu_map()
1065 ret = domain->ops->map(domain, iova, paddr, pgsize, prot); in iommu_map()
1090 if (unlikely(domain->ops->unmap == NULL || in iommu_unmap()
1091 domain->ops->pgsize_bitmap == 0UL)) in iommu_unmap()
1098 min_pagesz = 1 << __ffs(domain->ops->pgsize_bitmap); in iommu_unmap()
1120 unmapped_page = domain->ops->unmap(domain, iova, pgsize); in iommu_unmap()
1144 if (unlikely(domain->ops->pgsize_bitmap == 0UL)) in default_iommu_map_sg()
1147 min_pagesz = 1 << __ffs(domain->ops->pgsize_bitmap); in default_iommu_map_sg()
1182 if (unlikely(domain->ops->domain_window_enable == NULL)) in iommu_domain_window_enable()
1185 return domain->ops->domain_window_enable(domain, wnd_nr, paddr, size, in iommu_domain_window_enable()
1192 if (unlikely(domain->ops->domain_window_disable == NULL)) in iommu_domain_window_disable()
1195 return domain->ops->domain_window_disable(domain, wnd_nr); in iommu_domain_window_disable()
1228 *paging = (domain->ops->pgsize_bitmap != 0UL); in iommu_domain_get_attr()
1233 if (domain->ops->domain_get_windows != NULL) in iommu_domain_get_attr()
1234 *count = domain->ops->domain_get_windows(domain); in iommu_domain_get_attr()
1240 if (!domain->ops->domain_get_attr) in iommu_domain_get_attr()
1243 ret = domain->ops->domain_get_attr(domain, attr, data); in iommu_domain_get_attr()
1260 if (domain->ops->domain_set_windows != NULL) in iommu_domain_set_attr()
1261 ret = domain->ops->domain_set_windows(domain, *count); in iommu_domain_set_attr()
1267 if (domain->ops->domain_set_attr == NULL) in iommu_domain_set_attr()
1270 ret = domain->ops->domain_set_attr(domain, attr, data); in iommu_domain_set_attr()