summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoerg Roedel <jroedel@suse.de>2020-03-26 16:08:41 +0100
committerJoerg Roedel <jroedel@suse.de>2020-03-27 11:14:52 +0100
commit986d5ecc56999800a5d112a70e88522d9212aefd (patch)
tree50574064bb6f798e72a0a2e54a2c7bf9846eb314
parenta4b6c2af8f65439cd29c1de56489bc6e9244db35 (diff)
downloadlinux-stable-986d5ecc56999800a5d112a70e88522d9212aefd.tar.gz
linux-stable-986d5ecc56999800a5d112a70e88522d9212aefd.tar.bz2
linux-stable-986d5ecc56999800a5d112a70e88522d9212aefd.zip
iommu: Move fwspec->iommu_priv to struct dev_iommu
Move the pointer for iommu private data from struct iommu_fwspec to struct dev_iommu. Signed-off-by: Joerg Roedel <jroedel@suse.de> Tested-by: Will Deacon <will@kernel.org> # arm-smmu Reviewed-by: Jean-Philippe Brucker <jean-philippe@linaro.org> Link: https://lore.kernel.org/r/20200326150841.10083-17-joro@8bytes.org
-rw-r--r--include/linux/iommu.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
index 49e3173260b3..7ef8b0bda695 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
@@ -369,6 +369,7 @@ struct iommu_fault_param {
*
* @fault_param: IOMMU detected device fault reporting data
* @fwspec: IOMMU fwspec data
+ * @priv: IOMMU Driver private data
*
* TODO: migrate other per device data pointers under iommu_dev_data, e.g.
* struct iommu_group *iommu_group;
@@ -377,6 +378,7 @@ struct dev_iommu {
struct mutex lock;
struct iommu_fault_param *fault_param;
struct iommu_fwspec *fwspec;
+ void *priv;
};
int iommu_device_register(struct iommu_device *iommu);
@@ -589,7 +591,6 @@ struct iommu_group *fsl_mc_device_group(struct device *dev);
struct iommu_fwspec {
const struct iommu_ops *ops;
struct fwnode_handle *iommu_fwnode;
- void *iommu_priv;
u32 flags;
u32 num_pasid_bits;
unsigned int num_ids;
@@ -629,12 +630,12 @@ static inline void dev_iommu_fwspec_set(struct device *dev,
static inline void *dev_iommu_priv_get(struct device *dev)
{
- return dev->iommu->fwspec->iommu_priv;
+ return dev->iommu->priv;
}
static inline void dev_iommu_priv_set(struct device *dev, void *priv)
{
- dev->iommu->fwspec->iommu_priv = priv;
+ dev->iommu->priv = priv;
}
int iommu_probe_device(struct device *dev);