Home
last modified time | relevance | path

Searched refs:iommufd (Results 1 – 14 of 14) sorted by relevance

/linux/tools/testing/selftests/vfio/
H A Dvfio_iommufd_setup_test.c18 static int vfio_device_bind_iommufd_ioctl(int cdev_fd, int iommufd) in vfio_device_bind_iommufd_ioctl() argument
22 .iommufd = iommufd, in vfio_device_bind_iommufd_ioctl()
35 static int vfio_device_ioas_alloc_ioctl(int iommufd, struct iommu_ioas_alloc *alloc_args) in vfio_device_ioas_alloc_ioctl() argument
41 return ioctl(iommufd, IOMMU_IOAS_ALLOC, alloc_args); in vfio_device_ioas_alloc_ioctl()
65 int iommufd; in FIXTURE() local
71 ASSERT_LE(0, (self->iommufd = open(iommu_dev_path, O_RDWR, 0))); in FIXTURE_SETUP()
77 ASSERT_EQ(0, close(self->iommufd)); in FIXTURE_TEARDOWN()
82 ASSERT_EQ(0, vfio_device_bind_iommufd_ioctl(self->cdev_fd, self->iommufd)); in TEST_F()
98 ASSERT_EQ(0, vfio_device_bind_iommufd_ioctl(self->cdev_fd, self->iommufd)); in TEST_F()
99 ASSERT_NE(0, vfio_device_bind_iommufd_ioctl(self->cdev_fd, self->iommufd)); in TEST_F()
[all …]
/linux/tools/testing/selftests/vfio/lib/
H A Diommu.c129 if (ioctl(iommu->iommufd, IOMMU_IOAS_MAP, &args)) in iommufd_map()
139 if (iommu->iommufd) in __iommu_map()
198 return __iommufd_unmap(iommu->iommufd, region->iova, region->size, in iommufd_unmap()
206 if (iommu->iommufd) in __iommu_unmap()
224 if (iommu->iommufd) in __iommu_unmap_all()
225 ret = __iommufd_unmap(iommu->iommufd, 0, UINT64_MAX, in __iommu_unmap_all()
353 ret = ioctl(iommu->iommufd, IOMMU_IOAS_IOVA_RANGES, &query); in iommufd_iova_ranges()
362 ioctl_assert(iommu->iommufd, IOMMU_IOAS_IOVA_RANGES, &query); in iommufd_iova_ranges()
386 if (iommu->iommufd) in iommu_iova_ranges()
408 static u32 iommufd_ioas_alloc(int iommufd) in iommufd_ioas_alloc() argument
[all …]
H A Dvfio_pci_device.c412 int __vfio_device_bind_iommufd(int device_fd, int iommufd, const char *vf_token) in __vfio_device_bind_iommufd() argument
416 .iommufd = iommufd, in __vfio_device_bind_iommufd()
432 static void vfio_device_bind_iommufd(int device_fd, int iommufd, in vfio_device_bind_iommufd() argument
435 int ret = __vfio_device_bind_iommufd(device_fd, iommufd, vf_token); in vfio_device_bind_iommufd()
463 vfio_device_bind_iommufd(device->fd, device->iommu->iommufd, vf_token); in vfio_pci_iommufd_setup()
/linux/Documentation/userspace-api/
H A Diommufd.rst19 At minimum iommufd provides universal support of managing I/O address spaces and
24 small letter (iommufd) refers to the file descriptors created via /dev/iommu for
41 - IOMMUFD_OBJ_DEVICE, representing a device that is bound to iommufd by an
131 overhead from the hypercalls. Along with the HW QUEUE object, iommufd provides
141 datastructures (external to iommufd), with numbers referred to operations
145 | iommufd (HWPT_PAGING only) |
161 | iommufd (with HWPT_NESTED) |
177 | iommufd (with vIOMMU/vDEVICE) |
198 1. IOMMUFD_OBJ_IOAS is created via the IOMMU_IOAS_ALLOC uAPI. An iommufd can
204 to bind a device to an iommufd. The driver is expected to implement a set of
[all …]
/linux/tools/testing/selftests/vfio/lib/include/libvfio/
H A Diommu.h30 int iommufd; member
68 #define MODE_IOMMUFD "iommufd"
80 FIXTURE_VARIANT_ADD_IOMMU_MODE(iommufd, ##__VA_ARGS__)
H A Dvfio_pci_device.h161 int __vfio_device_bind_iommufd(int device_fd, int iommufd, const char *vf_token);
/linux/tools/testing/selftests/iommu/
H A D.gitignore2 /iommufd
H A Diommufd.c58 FIXTURE(iommufd) in FIXTURE() argument
63 FIXTURE_SETUP(iommufd) in FIXTURE_SETUP() argument
69 FIXTURE_TEARDOWN(iommufd) in FIXTURE_TEARDOWN() argument
74 TEST_F(iommufd, simple_close) in TEST_F() argument
78 TEST_F(iommufd, cmd_fail) in TEST_F() argument
92 TEST_F(iommufd, cmd_length) in TEST_F() argument
143 TEST_F(iommufd, cmd_ex_fail) in TEST_F() argument
163 TEST_F(iommufd, global_options) in TEST_F() argument
2428 TEST_F(iommufd, simple_ioctls) in TEST_F()
2434 TEST_F(iommufd, unmap_cm in TEST_F()
2386 TEST_F(iommufd,simple_ioctls) TEST_F() argument
2392 TEST_F(iommufd,unmap_cmd) TEST_F() argument
2410 TEST_F(iommufd,map_cmd) TEST_F() argument
2430 TEST_F(iommufd,info_cmd) TEST_F() argument
2442 TEST_F(iommufd,set_iommu_cmd) TEST_F() argument
2450 TEST_F(iommufd,vfio_ioas) TEST_F() argument
[all...]
/linux/drivers/iommu/arm/arm-smmu-v3/
H A DMakefile4 arm_smmu_v3-$(CONFIG_ARM_SMMU_V3_IOMMUFD) += arm-smmu-v3-iommufd.o
/linux/drivers/vfio/
H A DMakefile7 vfio-$(CONFIG_IOMMUFD) += iommufd.o
H A Dvfio_main.c550 struct iommufd_ctx *iommufd = df->iommufd; in vfio_df_device_first_open() local
558 if (iommufd) in vfio_df_device_first_open()
573 if (iommufd) in vfio_df_device_first_open()
585 struct iommufd_ctx *iommufd = df->iommufd; in vfio_df_device_last_close() local
591 if (iommufd) in vfio_df_device_last_close()
/linux/include/uapi/linux/
H A Dvfio.h935 __s32 iommufd; member
/linux/drivers/vfio/pci/
H A Dvfio_pci_core.c921 struct iommufd_ctx *iommufd = vfio_iommufd_device_ictx(fill->vdev); in vfio_pci_fill_devs() local
933 int id = vfio_iommufd_get_dev_id(vdev, iommufd); in vfio_pci_fill_devs()
/linux/
H A DMAINTAINERS13719 T: git git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd.git
13720 F: Documentation/userspace-api/iommufd.rst
13721 F: drivers/iommu/iommufd/
13722 F: include/linux/iommufd.h
13723 F: include/uapi/linux/iommufd.h