Re: [PATCH 2/5] dt-bindings: iommu: verisilicon: Add binding for VSI IOMMU

From: Benjamin Gaignard
Date: Mon Jun 16 2025 - 12:06:50 EST



Le 16/06/2025 à 17:58, Conor Dooley a écrit :
On Mon, Jun 16, 2025 at 05:50:50PM +0200, Benjamin Gaignard wrote:
Le 16/06/2025 à 17:42, Conor Dooley a écrit :
On Mon, Jun 16, 2025 at 05:30:44PM +0200, Benjamin Gaignard wrote:
Le 16/06/2025 à 17:14, Conor Dooley a écrit :
On Mon, Jun 16, 2025 at 04:55:50PM +0200, Benjamin Gaignard wrote:
Add a device tree binding for the Verisilicon (VSI) IOMMU. This IOMMU sits
in front of hardware encoder and decoder blocks on SoCs using Verisilicon IP,
such as the Rockchip RK3588.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx>
---
.../bindings/iommu/verisilicon,iommu.yaml | 71 +++++++++++++++++++
1 file changed, 71 insertions(+)
create mode 100644 Documentation/devicetree/bindings/iommu/verisilicon,iommu.yaml

diff --git a/Documentation/devicetree/bindings/iommu/verisilicon,iommu.yaml b/Documentation/devicetree/bindings/iommu/verisilicon,iommu.yaml
new file mode 100644
index 000000000000..acef855fc61d
--- /dev/null
+++ b/Documentation/devicetree/bindings/iommu/verisilicon,iommu.yaml
@@ -0,0 +1,71 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iommu/verisilicon,iommu.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Verisilicon IOMMU
+
+maintainers:
+ - Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx>
+
+description: |+
+ A Versilicon iommu translates io virtual addresses to physical addresses for
+ its associated video decoder.
+
+properties:
+ compatible:
+ oneOf:
+ - items:
+ - const: verisilicon,iommu
You're missing a soc-specific compatible at the very least here, but is
there really no versioning on the IP at all? I'd be surprised if
verisilicon only produced exactly one version of an iommu IP.
I only aware this version of the iommu for the moment.
"for the moment", yeah. Is there any information that could be used to
version this available?
The hardware block isn't documented in the TRM so I don't know if there is a version
field or something like that.

Does adding verisilicon,rk3588-iommu sound good for you ?
It'd be "rockchip,rk3588-iommu", but sure.
"rockchip,rk3588-iommu" is already use for other MMUs in rk3588.
"rockchip,rk3588-video-iommu" then? Instances of an IP in an SoC get a
specific compatible with the SoC vendor's prefix, so having verisilicon
there isn't suitable unless they made the SoC.

Other hardware video codecs have a different IOMMU so I will suggest
"rockchip,rk3588-av1-iommu" which is specific to this video hardware block.