[PATCH V2 0/3] Add device tree support for NVIDIA Tegra CMDQV

Ashish Mhetre
2025-11-25T07:17:18Z

This series adds device tree support for the CMDQ-Virtualization (CMDQV)
hardware on NVIDIA Tegra264 SoCs.

CMDQV is a hardware block that works alongside the ARM SMMUv3 to assist in
virtualizing the command queue. It was previously only supported through
ACPI on Tegra241. This series extends the existing driver to support device
tree based initialization, which is required for Tegra264 platforms.

The series is structured as follows:

Patch 1: Extends the tegra241-cmdqv driver to support device tree probing
alongside the existing ACPI support. The SMMU driver now parses
the nvidia,cmdqv phandle to associate each SMMU with its
corresponding CMDQV instance.

Patch 2: Adds device tree binding documentation for nvidia,tegra264-cmdqv
and extends the arm,smmu-v3 binding with an optional nvidia,cmdqv
property.

Patch 3: Adds CMDQV device nodes to the Tegra264 device tree and enables
them on the tegra264-p3834 platform.

The implementation follows the existing ACPI probe path to minimize code
divergence and maintain consistency with Tegra241 support.

Changes from V1:
- Updated dependency for CONFIG_TEGRA241_CMDQV on OF || ACPI
- Changed maintainer to Nicolin Chen
- Removed interrupt-names property
- Added nvidia,tegra264-smmu to compatible enum for arm-smmu-v3
- Added allOf constraint to restrict nvidia,cmdqv property to
nvidia,tegra264-smmu only
- Updated SMMU nodes in device tree to use nvidia,tegra264-smmu compatible
string

Ashish Mhetre (3):
iommu/arm-smmu-v3: Add device-tree support for CMDQV driver
dt-bindings: iommu: Add NVIDIA Tegra CMDQV support
arm64: dts: nvidia: Add nodes for CMDQV

.../bindings/iommu/arm,smmu-v3.yaml | 30 +++++++++-
.../bindings/iommu/nvidia,tegra264-cmdqv.yaml | 42 ++++++++++++++
.../arm64/boot/dts/nvidia/tegra264-p3834.dtsi | 8 +++
arch/arm64/boot/dts/nvidia/tegra264.dtsi | 55 +++++++++++++++++--
drivers/iommu/arm/Kconfig | 2 +-
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 32 +++++++++++
.../iommu/arm/arm-smmu-v3/tegra241-cmdqv.c | 43 ++++++++++++++-
7 files changed, 203 insertions(+), 9 deletions(-)
create mode 100644 Documentation/devicetree/bindings/iommu/nvidia,tegra264-cmdqv.yaml

--
2.25.1