Searched refs:iommufd_access (Results 1 - 8 of 8) sorted by relevance
/kernel/linux/linux-6.6/include/linux/ |
H A 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 *acces [all...] |
H A D | vfio.h | 23 struct iommufd_access; 65 struct iommufd_access *iommufd_access; member
|
/kernel/linux/linux-6.6/drivers/vfio/ |
H A 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()
|
H A 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()
|
/kernel/linux/linux-6.6/drivers/iommu/iommufd/ |
H A 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() 762 * iommufd_access_create - Create an iommufd_access 768 * An iommufd_access allows a driver to read/write to the IOAS without using 774 struct iommufd_access * 778 struct iommufd_access *access; in iommufd_access_create() 808 * iommufd_access_destroy - Destroy an iommufd_access 813 void iommufd_access_destroy(struct iommufd_access *acces [all...] |
H A D | iommufd_private.h | 301 struct iommufd_access { struct 313 int iopt_add_access(struct io_pagetable *iopt, struct iommufd_access *access); 315 struct iommufd_access *access,
|
H A D | io_pagetable.c | 829 struct iommufd_access *access; in iopt_check_iova_alignment() 921 struct iommufd_access *access; in iopt_calculate_iova_alignment() 1159 int iopt_add_access(struct io_pagetable *iopt, struct iommufd_access *access) in iopt_add_access() 1186 struct iommufd_access *access, in iopt_remove_access()
|
H A D | selftest.c | 604 struct iommufd_access *access; 739 struct iommufd_access *access; in iommufd_test_create_access()
|
Completed in 9 milliseconds