Re: [PATCH 15/15] iommu: Move fwspec->iommu_priv to struct dev_iommu

From: Jean-Philippe Brucker
Date: Mon Mar 16 2020 - 11:58:09 EST


On Tue, Mar 10, 2020 at 10:12:29AM +0100, Joerg Roedel wrote:
> From: Joerg Roedel <jroedel@xxxxxxx>
>
> Move the pointer for iommu private data from struct iommu_fwspec to
> struct dev_iommu.
>
> Tested-by: Will Deacon <will@xxxxxxxxxx> # arm-smmu
> Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

Reviewed-by: Jean-Philippe Brucker <jean-philippe@xxxxxxxxxx>

> ---
> include/linux/iommu.h | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/include/linux/iommu.h b/include/linux/iommu.h
> index 056900e75758..8c4d45fce042 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);
> --
> 2.17.1
>