Re: [PATCH 2/9] iommu/ipmmu-vmsa: Hook up R8A774E1 DT matching code
From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2020-07-14 08:42:02
Also in:
dmaengine, linux-devicetree, linux-gpio, linux-iommu, linux-renesas-soc, lkml
Hi Prabhakar, On Tue, Jul 14, 2020 at 10:30 AM Lad, Prabhakar [off-list ref] wrote:
On Tue, Jul 14, 2020 at 9:09 AM Geert Uytterhoeven [off-list ref] wrote:quoted
On Mon, Jul 13, 2020 at 11:35 PM Lad Prabhakar [off-list ref] wrote:quoted
From: Marian-Cristian Rotariu <redacted> Add support for RZ/G2H (R8A774E1) SoC IPMMUs. Signed-off-by: Marian-Cristian Rotariu <redacted> Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>Thanks for your patch!quoted
--- a/drivers/iommu/ipmmu-vmsa.c +++ b/drivers/iommu/ipmmu-vmsa.c@@ -751,6 +751,7 @@ static const struct soc_device_attribute soc_rcar_gen3[] = { static const struct soc_device_attribute soc_rcar_gen3_whitelist[] = { { .soc_id = "r8a774b1", }, { .soc_id = "r8a774c0", }, + { .soc_id = "r8a774e1", },Adding an entry to soc_rcar_gen3_whitelist[] doesn't do anything, unless you also add the same entry to soc_rcar_gen3[].I think the comment "For R-Car Gen3 use a white list to opt-in slave devices." is misleading. Booting through the kernel I do see iommu groups (attached is the logs).
Indeed. Without an entry in soc_rcar_gen3[], the IPMMU is enabled unconditionally, and soc_rcar_gen3_whitelist[] is ignored. That's why you want an entry in both, unless you have an R-Car Gen3 SoC where the IPMMU works correctly with all slave devices present. Perhaps soc_rcar_gen3[] should be renamed to soc_rcar_gen3_greylist[] (or soc_rcar_gen3_maybelist[]) to make this clear?
Also the recent patch to add "r8a77961" just adds to soc_rcar_gen3_whitelist.
Oops, commit 17fe16181639801b ("iommu/renesas: Add support for r8a77961")
did it wrong, too.
quoted
quoted
{ .soc_id = "r8a7795", .revision = "ES3.*" }, { .soc_id = "r8a77961", }, { .soc_id = "r8a77965", },
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@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