[PATCH v2 0/2] Add arm-smmu-v3 support for Laguna SMMU silicon erratum workaround

From: Peter Griffin

Date: Fri Sep 11 2026 - 17:23:05 EST


Hi folks,

The Google Tensor G5 SoC (Laguna) has a silicon erratum with the SMMU
integration where the AxPROT[2] signal is always 1, which makes all
transactions appear as instructions.

As a software workaround we make use of the INSTCFG override feature to
force all incoming traffic to data.

To enable this workaround, the "arm,instdata-override" DT property can be
provided in the device tree entry for the SMMU, similar to how existing
errata workarounds are handled by this driver.

The first patch in this series adds the DT bindings documentation for the
property and the second patch adds the associated driver changes. The
Laguna SMMU device tree changes will be sent separately (as that will
go via Arm SoC tree).

Note existing silicon errata DT options in this driver tend to use a vendor
prefix e.g. hisilicon,broken-prefetch-cmd or
cavium,cn9900-broken-page1-regspace. But Rob agreed in the v1 thread that
using "arm,instdata-override" makes sense here in case other SoCs need
to use this.

The Arm SMMU spec that documents the instcfg feature can be found at this
link: https://developer.arm.com/documentation/ihi0070/ha/

regards,

Peter

Signed-off-by: Peter Griffin <peter.griffin@xxxxxxxxxx>
---
Changes in v2:
- Add a more verbose commit message of the silicon errata issue (Will/Robin)
- Make clear it is a silicon errata software workaround not a "feature" (Rob)
- Fixup incorrect bracket (Sashiko / Nicolin)
- Add a note about why "bypass" is not required in commit message (Nicolin)
- Remove feature flag (Nicolin)
- Move override feature/DT property sanity check closer to the
register read (Peter)
- Rebase on next-20260911
- Link to v1: https://lore.kernel.org/r/20260724-arm-smmu-v3-instcfg-override-v1-0-e7acf4a8a525@xxxxxxxxxx

---
Peter Griffin (2):
dt-bindings: iommu: arm,smmu-v3: Add arm,instdata-override property
iommu/arm-smmu-v3: Add support for arm,instdata-override DT property

.../devicetree/bindings/iommu/arm,smmu-v3.yaml | 10 +++++++++
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 25 ++++++++++++++++++----
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h | 6 ++++++
3 files changed, 37 insertions(+), 4 deletions(-)
---
base-commit: 68142f986ff04b2b70b31db00f719bf690f64a9a
change-id: 20260724-arm-smmu-v3-instcfg-override-b5650fdbfe34

Best regards,
--
Peter Griffin <peter.griffin@xxxxxxxxxx>