Hi Magnus-san, Geert-san,
> From: Geert Uytterhoeven, Sent: Sunday, October 28, 2018 10:33 PM
>
> Hi Magnus,
>
> Thanks for your patch!
>
> On Sun, Oct 21, 2018 at 7:56 PM Magnus Damm wrote:
> > From: Magnus Damm
> >
> > For testing purpose enable IPMMU for Ethernet-AVB on R-Car M3-N/V3H/E3.
> >
> > Not for upstream merge.
> >
> > Not-Yet-Signed-off-by: Magnus Damm
> > ---
> >
> > Applies on top of renesas-devel-20181019-v4.19-rc8
> >
> > drivers/iommu/ipmmu-vmsa.c |4
> > 1 file changed, 4 insertions(+)
> >
> > --- 0001/drivers/iommu/ipmmu-vmsa.c
> > +++ work/drivers/iommu/ipmmu-vmsa.c 2018-10-22 02:46:30.139880557 +0900
> > @@ -756,6 +756,10 @@ static int ipmmu_init_platform_device(st
> >
> > static bool ipmmu_slave_whitelist(struct device *dev)
> > {
> > + /* R-Car M3-N/V3H/E3 Ethernet-AVB */
> > + if (!strcmp(dev_name(dev), "e680.ethernet"))
> > + return true;
>
> I'm afraid the whitelisting doesn't work that way: with the above check, it
> will
> be enabled on all R-Car Gen3 SoCs.
I agree with Geert-san.
So, how about adding .revision into the soc_rcar_gen3 like a whitelist of SoCs
first as following?
I believe almost all R-Car Gen3 SoCs can use IPMMU safety, except H3 ES2.0 or
older and M3-W ES1.*.
---
diff --git a/drivers/iommu/ipmmu-vmsa.c b/drivers/iommu/ipmmu-vmsa.c
index b98a031..7a528b8 100644
--- a/drivers/iommu/ipmmu-vmsa.c
+++ b/drivers/iommu/ipmmu-vmsa.c
@@ -758,10 +758,10 @@ static bool ipmmu_slave_whitelist(struct device *dev)
}
static const struct soc_device_attribute soc_rcar_gen3[] = {
- { .soc_id = "r8a7795", },
- { .soc_id = "r8a7796", },
+ { .soc_id = "r8a7795", .revision = "ES3.*" },
{ .soc_id = "r8a77965", },
{ .soc_id = "r8a77970", },
+ { .soc_id = "r8a77990", },
{ .soc_id = "r8a77995", },
{ /* sentinel */ }
};
Best regards,
Yoshihiro Shimoda
> > +
> > /* By default, do not allow use of IPMMU */
> > return false;
> > }
>
> Gr{oetje,eeting}s,
>
> Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 --
> ge...@linux-m68k.org
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like
> that.
> -- Linus Torvalds