Searched refs:iommufd_access (Results 1 – 9 of 9) sorted by relevance
/Linux-v6.6/include/linux/ |
D | iommufd.h | 17 struct iommufd_access; 47 struct iommufd_access * 50 void iommufd_access_destroy(struct iommufd_access *access); 51 int iommufd_access_attach(struct iommufd_access *access, u32 ioas_id); 52 int iommufd_access_replace(struct iommufd_access *access, u32 ioas_id); 53 void iommufd_access_detach(struct iommufd_access *access); 63 int iommufd_access_pin_pages(struct iommufd_access *access, unsigned long iova, 66 void iommufd_access_unpin_pages(struct iommufd_access *access, 68 int iommufd_access_rw(struct iommufd_access *access, unsigned long iova, 83 static inline int iommufd_access_pin_pages(struct iommufd_access *access, in iommufd_access_pin_pages() [all …]
|
D | vfio.h | 23 struct iommufd_access; 65 struct iommufd_access *iommufd_access; member
|
/Linux-v6.6/drivers/vfio/ |
D | iommufd.c | 195 struct iommufd_access *user; in vfio_iommufd_emulated_bind() 202 vdev->iommufd_access = user; in vfio_iommufd_emulated_bind() 211 if (vdev->iommufd_access) { in vfio_iommufd_emulated_unbind() 212 iommufd_access_destroy(vdev->iommufd_access); in vfio_iommufd_emulated_unbind() 214 vdev->iommufd_access = NULL; in vfio_iommufd_emulated_unbind() 226 rc = iommufd_access_replace(vdev->iommufd_access, *pt_id); in vfio_iommufd_emulated_attach_ioas() 228 rc = iommufd_access_attach(vdev->iommufd_access, *pt_id); in vfio_iommufd_emulated_attach_ioas() 240 if (WARN_ON(!vdev->iommufd_access) || in vfio_iommufd_emulated_detach_ioas() 244 iommufd_access_detach(vdev->iommufd_access); in vfio_iommufd_emulated_detach_ioas()
|
D | vfio_main.c | 1544 if (device->iommufd_access) { in vfio_pin_pages() 1556 device->iommufd_access, ALIGN_DOWN(iova, PAGE_SIZE), in vfio_pin_pages() 1585 if (device->iommufd_access) { in vfio_unpin_pages() 1588 iommufd_access_unpin_pages(device->iommufd_access, in vfio_unpin_pages() 1623 if (device->iommufd_access) { in vfio_dma_rw() 1634 return iommufd_access_rw(device->iommufd_access, iova, data, in vfio_dma_rw()
|
/Linux-v6.6/drivers/iommu/iommufd/ |
D | device.c | 690 static int iommufd_access_change_ioas(struct iommufd_access *access, in iommufd_access_change_ioas() 737 static int iommufd_access_change_ioas_id(struct iommufd_access *access, u32 id) in iommufd_access_change_ioas_id() 751 struct iommufd_access *access = in iommufd_access_destroy_object() 752 container_of(obj, struct iommufd_access, obj); in iommufd_access_destroy_object() 774 struct iommufd_access * 778 struct iommufd_access *access; in iommufd_access_create() 813 void iommufd_access_destroy(struct iommufd_access *access) in iommufd_access_destroy() 819 void iommufd_access_detach(struct iommufd_access *access) in iommufd_access_detach() 831 int iommufd_access_attach(struct iommufd_access *access, u32 ioas_id) in iommufd_access_attach() 847 int iommufd_access_replace(struct iommufd_access *access, u32 ioas_id) in iommufd_access_replace() [all …]
|
D | iommufd_private.h | 301 struct iommufd_access { struct 313 int iopt_add_access(struct io_pagetable *iopt, struct iommufd_access *access); argument 315 struct iommufd_access *access,
|
D | io_pagetable.c | 817 struct iommufd_access *access; in iopt_check_iova_alignment() 909 struct iommufd_access *access; in iopt_calculate_iova_alignment() 1137 int iopt_add_access(struct io_pagetable *iopt, struct iommufd_access *access) in iopt_add_access() 1161 struct iommufd_access *access, in iopt_remove_access()
|
D | selftest.c | 604 struct iommufd_access *access; 739 struct iommufd_access *access; in iommufd_test_create_access()
|
/Linux-v6.6/Documentation/userspace-api/ |
D | iommufd.rst | 138 iommufd_access object that is similar to the domain binding a physical device 155 xarray if they have been pinned through an iommufd_access.
|