mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-03 07:38:10 +00:00
iommu/arm-smmu-v3: Use accessor functions for iommu private data
Make use of dev_iommu_priv_set/get() functions in the code. Signed-off-by: Joerg Roedel <jroedel@suse.de> Tested-by: Hanjun Guo <guohanjun@huawei.com> Reviewed-by: Jean-Philippe Brucker <jean-philippe@linaro.org> Link: https://lore.kernel.org/r/20200326150841.10083-10-joro@8bytes.org
This commit is contained in:
parent
f9867f416e
commit
b7a9662f2c
1 changed files with 5 additions and 5 deletions
|
@ -2659,7 +2659,7 @@ static int arm_smmu_attach_dev(struct iommu_domain *domain, struct device *dev)
|
|||
if (!fwspec)
|
||||
return -ENOENT;
|
||||
|
||||
master = fwspec->iommu_priv;
|
||||
master = dev_iommu_priv_get(dev);
|
||||
smmu = master->smmu;
|
||||
|
||||
arm_smmu_detach_dev(master);
|
||||
|
@ -2795,7 +2795,7 @@ static int arm_smmu_add_device(struct device *dev)
|
|||
if (!fwspec || fwspec->ops != &arm_smmu_ops)
|
||||
return -ENODEV;
|
||||
|
||||
if (WARN_ON_ONCE(fwspec->iommu_priv))
|
||||
if (WARN_ON_ONCE(dev_iommu_priv_get(dev)))
|
||||
return -EBUSY;
|
||||
|
||||
smmu = arm_smmu_get_by_fwnode(fwspec->iommu_fwnode);
|
||||
|
@ -2810,7 +2810,7 @@ static int arm_smmu_add_device(struct device *dev)
|
|||
master->smmu = smmu;
|
||||
master->sids = fwspec->ids;
|
||||
master->num_sids = fwspec->num_ids;
|
||||
fwspec->iommu_priv = master;
|
||||
dev_iommu_priv_set(dev, master);
|
||||
|
||||
/* Check the SIDs are in range of the SMMU and our stream table */
|
||||
for (i = 0; i < master->num_sids; i++) {
|
||||
|
@ -2852,7 +2852,7 @@ static int arm_smmu_add_device(struct device *dev)
|
|||
iommu_device_unlink(&smmu->iommu, dev);
|
||||
err_free_master:
|
||||
kfree(master);
|
||||
fwspec->iommu_priv = NULL;
|
||||
dev_iommu_priv_set(dev, NULL);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -2865,7 +2865,7 @@ static void arm_smmu_remove_device(struct device *dev)
|
|||
if (!fwspec || fwspec->ops != &arm_smmu_ops)
|
||||
return;
|
||||
|
||||
master = fwspec->iommu_priv;
|
||||
master = dev_iommu_priv_get(dev);
|
||||
smmu = master->smmu;
|
||||
arm_smmu_detach_dev(master);
|
||||
iommu_group_remove_device(dev);
|
||||
|
|
Loading…
Reference in a new issue