ioasid_t
int idxd_copy_cr(struct idxd_wq *wq, ioasid_t pasid, unsigned long addr,
int idxd_copy_cr(struct idxd_wq *wq, ioasid_t pasid, unsigned long addr,
ioasid_t pasid;
ioasid_t pasid;
struct device *dev, ioasid_t pasid,
void amd_iommu_remove_dev_pasid(struct device *dev, ioasid_t pasid,
ioasid_t pasid, unsigned long gcr3);
int amd_iommu_clear_gcr3(struct iommu_dev_data *dev_data, ioasid_t pasid);
ioasid_t pasid, u64 address, size_t size);
ioasid_t pasid;
ioasid_t pasid, bool gn)
ioasid_t pasid, bool gn)
size_t size, ioasid_t pasid, bool gn)
ioasid_t pasid = IOMMU_NO_PASID;
ioasid_t pasid, u64 address, size_t size)
ioasid_t pasid)
ioasid_t pasid, bool alloc)
ioasid_t pasid, unsigned long gcr3, bool set)
int amd_iommu_set_gcr3(struct iommu_dev_data *dev_data, ioasid_t pasid,
int amd_iommu_clear_gcr3(struct iommu_dev_data *dev_data, ioasid_t pasid)
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid,
void amd_iommu_remove_dev_pasid(struct device *dev, ioasid_t pasid,
ioasid_t pasid)
struct device *dev, ioasid_t pasid)
struct device *dev, ioasid_t id,
void arm_smmu_clear_cd(struct arm_smmu_master *master, ioasid_t ssid)
ioasid_t ssid)
ioasid_t ssid, bool nested_ats_flush)
ioasid_t ssid)
struct device *dev, ioasid_t id,
struct arm_smmu_domain *smmu_domain, ioasid_t pasid,
struct device *dev, ioasid_t pasid,
ioasid_t ssid;
ioasid_t ssid;
void arm_smmu_clear_cd(struct arm_smmu_master *master, ioasid_t ssid);
struct arm_smmu_domain *smmu_domain, ioasid_t pasid,
struct device *dev, ioasid_t pasid)
struct device *dev, ioasid_t pasid)
struct device *dev, ioasid_t pasid)
struct device *dev, ioasid_t pasid)
struct device *dev, ioasid_t pasid)
struct device *dev, ioasid_t pasid)
ioasid_t pasid, enum cache_tag_type type)
ioasid_t pasid, enum cache_tag_type type)
struct device *dev, ioasid_t pasid,
ioasid_t pasid)
ioasid_t pasid, u16 did, phys_addr_t fsptptr,
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid)
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid)
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid);
struct device *dev, ioasid_t pasid);
ioasid_t pasid, u16 did, phys_addr_t fsptptr,
ioasid_t pasid;
ioasid_t pasid, enum cache_tag_type type);
struct device *dev, ioasid_t pasid);
struct device *dev, ioasid_t pasid);
ioasid_t pasid;
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid,
ioasid_t pasid,
struct device *dev, ioasid_t pasid,
ioasid_t pasid;
static void iommu_remove_dev_pasid(struct device *dev, ioasid_t pasid,
struct iommu_group *group, ioasid_t pasid,
ioasid_t pasid,
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid,
ioasid_t pasid)
ioasid_t iommu_alloc_global_pasid(struct device *dev)
void iommu_free_global_pasid(ioasid_t pasid)
iommu_attach_handle_get(struct iommu_group *group, ioasid_t pasid, unsigned int type)
int iommufd_device_attach(struct iommufd_device *idev, ioasid_t pasid,
int iommufd_device_replace(struct iommufd_device *idev, ioasid_t pasid,
void iommufd_device_detach(struct iommufd_device *idev, ioasid_t pasid)
ioasid_t pasid)
iommufd_group_first_attach(struct iommufd_group *igroup, ioasid_t pasid)
ioasid_t pasid)
ioasid_t pasid)
ioasid_t pasid)
iommufd_device_get_attach_handle(struct iommufd_device *idev, ioasid_t pasid)
ioasid_t pasid)
ioasid_t pasid,
struct iommufd_device *idev, ioasid_t pasid)
iommufd_hw_pagetable_detach(struct iommufd_device *idev, ioasid_t pasid)
iommufd_device_do_attach(struct iommufd_device *idev, ioasid_t pasid,
iommufd_device_do_replace(struct iommufd_device *idev, ioasid_t pasid,
iommufd_device_auto_get_domain(struct iommufd_device *idev, ioasid_t pasid,
ioasid_t pasid,
struct iommufd_device *idev, ioasid_t pasid,
struct iommufd_device *idev, ioasid_t pasid,
struct iommufd_device *idev, ioasid_t pasid);
iommufd_hw_pagetable_detach(struct iommufd_device *idev, ioasid_t pasid);
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid);
ioasid_t iommu_alloc_global_pasid(struct device *dev);
void iommu_free_global_pasid(ioasid_t pasid);
struct device *dev, ioasid_t pasid,
struct device *dev, ioasid_t pasid)
static inline ioasid_t iommu_alloc_global_pasid(struct device *dev)
static inline void iommu_free_global_pasid(ioasid_t pasid) {}
ioasid_t pasid, struct iommu_domain *old);
int iommufd_device_attach(struct iommufd_device *idev, ioasid_t pasid,
int iommufd_device_replace(struct iommufd_device *idev, ioasid_t pasid,
void iommufd_device_detach(struct iommufd_device *idev, ioasid_t pasid);