Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8fbdce65 authored by Alex Williamson's avatar Alex Williamson Committed by Joerg Roedel
Browse files

iommu/amd: Implement iommu_device_group



Just use the amd_iommu_alias_table directly.

Signed-off-by: default avatarAlex Williamson <alex.williamson@redhat.com>
Signed-off-by: default avatarJoerg Roedel <joerg.roedel@amd.com>
parent 70ae6f0d
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -2773,6 +2773,18 @@ static int amd_iommu_domain_has_cap(struct iommu_domain *domain,
	return 0;
}

static int amd_iommu_device_group(struct device *dev, unsigned int *groupid)
{
	struct iommu_dev_data *dev_data = dev->archdata.iommu;

	if (!dev_data)
		return -ENODEV;

	*groupid = amd_iommu_alias_table[dev_data->devid];

	return 0;
}

static struct iommu_ops amd_iommu_ops = {
	.domain_init = amd_iommu_domain_init,
	.domain_destroy = amd_iommu_domain_destroy,
@@ -2782,6 +2794,7 @@ static struct iommu_ops amd_iommu_ops = {
	.unmap = amd_iommu_unmap,
	.iova_to_phys = amd_iommu_iova_to_phys,
	.domain_has_cap = amd_iommu_domain_has_cap,
	.device_group = amd_iommu_device_group,
};

/*****************************************************************************