/linux-master/drivers/vfio/ |
H A D | iommufd.c | 47 /* The legacy path has no way to return the selected pt_id */ 139 int vfio_iommufd_physical_attach_ioas(struct vfio_device *vdev, u32 *pt_id) argument 149 rc = iommufd_device_replace(vdev->iommufd_device, pt_id); 151 rc = iommufd_device_attach(vdev->iommufd_device, pt_id); 219 int vfio_iommufd_emulated_attach_ioas(struct vfio_device *vdev, u32 *pt_id) argument 226 rc = iommufd_access_replace(vdev->iommufd_access, *pt_id); 228 rc = iommufd_access_attach(vdev->iommufd_access, *pt_id);
|
H A D | device_cdev.c | 163 minsz = offsetofend(struct vfio_device_attach_iommufd_pt, pt_id); 172 ret = device->ops->attach_ioas(device, &attach.pt_id); 176 if (copy_to_user(&arg->pt_id, &attach.pt_id, sizeof(attach.pt_id))) {
|
/linux-master/tools/testing/selftests/iommu/ |
H A D | iommufd_utils.h | 128 static int _test_cmd_mock_domain_replace(int fd, __u32 stdev_id, __u32 pt_id, argument 136 .pt_id = pt_id, 145 *hwpt_id = cmd.mock_domain_replace.pt_id; 149 #define test_cmd_mock_domain_replace(stdev_id, pt_id) \ 150 ASSERT_EQ(0, _test_cmd_mock_domain_replace(self->fd, stdev_id, pt_id, \ 152 #define test_err_mock_domain_replace(_errno, stdev_id, pt_id) \ 154 pt_id, NULL)) 156 static int _test_cmd_hwpt_alloc(int fd, __u32 device_id, __u32 pt_id, argument 164 .pt_id [all...] |
/linux-master/include/linux/ |
H A D | iommufd.h | 25 int iommufd_device_attach(struct iommufd_device *idev, u32 *pt_id); 26 int iommufd_device_replace(struct iommufd_device *idev, u32 *pt_id);
|
H A D | vfio.h | 115 int (*attach_ioas)(struct vfio_device *vdev, u32 *pt_id); 139 int vfio_iommufd_physical_attach_ioas(struct vfio_device *vdev, u32 *pt_id); 144 int vfio_iommufd_emulated_attach_ioas(struct vfio_device *vdev, u32 *pt_id); 165 ((int (*)(struct vfio_device *vdev, u32 *pt_id)) NULL) 174 ((int (*)(struct vfio_device *vdev, u32 *pt_id)) NULL)
|
/linux-master/drivers/iommu/iommufd/ |
H A D | iommufd_test.h | 80 __u32 pt_id; member in struct:iommu_test_cmd::__anon62::__anon66
|
H A D | device.c | 544 struct iommufd_ioas *ioas, u32 *pt_id, 585 *pt_id = hwpt->obj.id; 607 *pt_id = hwpt->obj.id; 620 static int iommufd_device_change_pt(struct iommufd_device *idev, u32 *pt_id, argument 626 pt_obj = iommufd_get_object(idev->ictx, *pt_id, IOMMUFD_OBJ_ANY); 645 destroy_hwpt = iommufd_device_auto_get_domain(idev, ioas, pt_id, 670 * @pt_id: Input a IOMMUFD_OBJ_IOAS, or IOMMUFD_OBJ_HWPT_PAGING 676 * The caller should return the resulting pt_id back to userspace. 679 int iommufd_device_attach(struct iommufd_device *idev, u32 *pt_id) argument 683 rc = iommufd_device_change_pt(idev, pt_id, 543 iommufd_device_auto_get_domain(struct iommufd_device *idev, struct iommufd_ioas *ioas, u32 *pt_id, attach_fn do_attach) argument 711 iommufd_device_replace(struct iommufd_device *idev, u32 *pt_id) argument [all...] |
H A D | selftest.c | 714 u32 pt_id = cmd->id; local 743 rc = iommufd_device_attach(idev, &pt_id); 748 cmd->mock_domain.out_hwpt_id = pt_id; 770 unsigned int device_id, u32 pt_id, 792 rc = iommufd_device_replace(sobj->idev.idev, &pt_id); 796 cmd->mock_domain_replace.pt_id = pt_id; 1405 ucmd, cmd->id, cmd->mock_domain_replace.pt_id, cmd); 769 iommufd_test_mock_domain_replace(struct iommufd_ucmd *ucmd, unsigned int device_id, u32 pt_id, struct iommu_test_cmd *cmd) argument
|
H A D | hw_pagetable.c | 274 pt_obj = iommufd_get_object(ucmd->ictx, cmd->pt_id, IOMMUFD_OBJ_ANY);
|
/linux-master/include/uapi/linux/ |
H A D | iommufd.h | 408 * @pt_id: The IOAS or HWPT to connect this HWPT to 420 * IOAS via the @pt_id. The @data_type for this allocation must be set to 425 * @pt_id, in which the parent HWPT must be allocated previously via the 426 * same ioctl from a given IOAS (@pt_id). In this case, the @data_type 438 __u32 pt_id; member in struct:iommu_hwpt_alloc
|
H A D | vfio.h | 935 * @pt_id: Input the target id which can represent an ioas or a hwpt 949 * hw_pagetable with a new hw_pagetable corresponding to the given pt_id. 956 __u32 pt_id; member in struct:vfio_device_attach_iommufd_pt
|