[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9580255.XWMtPoN9Mj@avalon>
Date: Wed, 08 Jun 2016 03:23:54 +0300
From: Laurent Pinchart <laurent.pinchart@...asonboard.com>
To: Magnus Damm <magnus.damm@...il.com>
Cc: iommu@...ts.linux-foundation.org,
laurent.pinchart+renesas@...asonboard.com, geert+renesas@...der.be,
joro@...tes.org, linux-kernel@...r.kernel.org,
linux-renesas-soc@...r.kernel.org, horms+renesas@...ge.net.au
Subject: Re: [PATCH v2 06/11] iommu/ipmmu-vmsa: Teach xlate() to skip disabled iommus
Hi Magnus,
Thank you for the patch.
I agree with the comment that Geert made on v1, and I haven't seen you
replying to it or addressing it.
Quoting Geert,
"I think this should be handled in drivers/iommu/of_iommu.c:of_iommu_init()
instead, cfr. commit 3e5dd6f6e690048d ("clk: Ignore disabled DT clock
providers")."
On Monday 06 Jun 2016 12:58:22 Magnus Damm wrote:
> From: Magnus Damm <damm+renesas@...nsource.se>
>
> The ->xlate() call gets invoked even though the iommu
> device has status = "disabled" in DT, so make sure we
> skip over disabled devices.
>
> In my mind it would make sense to have this at some
> shared level, but I guess some users may want to
> configure the iommu regardless of DT state.
>
> Signed-off-by: Magnus Damm <damm+renesas@...nsource.se>
> ---
>
> Changes since V1:
> - Reworked slightly to fit on top of updated patch order
>
> drivers/iommu/ipmmu-vmsa.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> --- 0017/drivers/iommu/ipmmu-vmsa.c
> +++ work/drivers/iommu/ipmmu-vmsa.c 2016-06-06 10:58:18.530607110 +0900
> @@ -1001,7 +1001,13 @@ static struct iommu_group *ipmmu_device_
> static int ipmmu_of_xlate_dma(struct device *dev,
> struct of_phandle_args *spec)
> {
> - /* dummy callback to satisfy of_iommu_configure() */
> + /* If the IPMMU device is disabled in DT then return error
> + * to make sure the of_iommu code does not install ops
> + * even though the iommu device is disabled
> + */
> + if (!of_device_is_available(spec->np))
> + return -ENODEV;
> +
> return 0;
> }
--
Regards,
Laurent Pinchart
Powered by blists - more mailing lists