RISC-V IOMMU controllers
Implements support for the RISC-V architecture's standard IOMMU specification, the unit that translates and isolates DMA from devices on RISC-V systems. It covers both platform-integrated IOMMUs and a PCI-attached variant (matching QEMU's reference 1b36:0014 device and other real silicon IDs), and is used by virtual machines and the first generation of RISC-V servers and SoCs shipping in 2025.
recommendation
It should stay in the kernel because it is brand-new code (merged in Linux 6.13, late 2024) that enables a freshly ratified RISC-V architectural feature, with active commits continuing through early 2026. Both QEMU's virt machine and emerging RISC-V silicon expose these IOMMUs via platform/DT, ACPI, and PCI bindings, so the driver is on the growth curve, not the decline curve.
repository signals
sources
- git.kernel.org
Upstream activity is recent and ongoing for this directory; local `git log` in the kernel snapshot showed substantive touches through 2026-01-26, consistent with an actively maintained driver.
- cateee.net
The driver is very new in mainline (found in Linux 6.13-6.19) and binds both platform/DT and ACPI-described RISC-V IOMMU devices, indicating current rather than legacy hardware enablement.
- cateee.net
The PCI companion support is present in current kernels and matches both QEMU's reference PCI ID 1b36:0014 and another PCI ID 1efd:0008, showing active deployment targets beyond a dead one-off prototype.
- qemu.org
QEMU documents both PCI and platform RISC-V IOMMU devices for the `virt` machine and states Linux support was merged in v6.13, showing ongoing VM/test and new-platform deployment relevance.
codex reasoning notes (technical)
Not an early-exit case: this directory contains real platform/PCI IOMMU driver code. Recommendation is `keep` because the driver is only about 1.5 years old, local shell inspection found builtin platform and PCI drivers plus recent commits through 2026-01-26, and web search found current LKDDb/QEMU evidence of active enablement. No removal/deprecation discussion was found in lore web searches, so there is no basis to escalate to `remove` or `deprecate`. URL acquisition: kernel.org log URL via canonical recall, with recency validated by local shell `git log`; LKDDb and QEMU URLs obtained via web search.