Re: [External] Re: [PATCH v1] iommu/riscv: Support 32-bit register accesses
From: Zhanpeng Zhang
Date: Mon Jun 15 2026 - 05:52:53 EST
Hi Andreas,
For a generic kernel, the expected setting is to leave
RISCV_IOMMU_32BIT_ACCESS disabled.
If supporting such platforms from a single generic kernel is preferred, I can
look into replacing this build-time option with a runtime indication.
Regards,
Zhanpeng
> From: "Andreas Schwab"<schwab@xxxxxxx>
> Date: Mon, Jun 15, 2026, 16:22
> Subject: [External] Re: [PATCH v1] iommu/riscv: Support 32-bit register accesses
> To: "Zhanpeng Zhang"<zhangzhanpeng.jasper@xxxxxxxxxxxxx>
> Cc: "Tomasz Jeznach"<tjeznach@xxxxxxxxxxxx>, "Joerg Roedel"<joro@xxxxxxxxxx>, "Will Deacon"<will@xxxxxxxxxx>, "Robin Murphy"<robin.murphy@xxxxxxx>, "Paul Walmsley"<pjw@xxxxxxxxxx>, "Palmer Dabbelt"<palmer@xxxxxxxxxxx>, "Albert Ou"<aou@xxxxxxxxxxxxxxxxx>, "Alexandre Ghiti"<alex@xxxxxxxx>, <iommu@xxxxxxxxxxxxxxx>, <linux-riscv@xxxxxxxxxxxxxxxxxxx>, <linux-kernel@xxxxxxxxxxxxxxx>, "Xu Lu"<luxu.kernel@xxxxxxxxxxxxx>, <cuiyunhui@xxxxxxxxxxxxx>, <yuanzhu@xxxxxxxxxxxxx>
> On Jun 15 2026, Zhanpeng Zhang wrote:
>
> > +config RISCV_IOMMU_32BIT_ACCESS
> > + bool "Use 32-bit accesses for RISC-V IOMMU registers"
> > + depends on RISCV_IOMMU
> > + help
> > + Say Y when the RISC-V IOMMU MMIO window cannot be accessed
> > + using naturally aligned 64-bit loads and stores.
> > +
> > + When enabled, 64-bit IOMMU registers are accessed as paired
> > + 32-bit MMIO operations. This option does not describe an RV32
> > + kernel or a 32-bit IOMMU architecture.
>
> What is the expected setting in a generic kernel?
>
> --
> Andreas Schwab, SUSE Labs, schwab@xxxxxxx
> GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
> "And now for something completely different."
>