17e0fc507SBenjamin Gaignard# SPDX-License-Identifier: GPL-2.0-only 27e0fc507SBenjamin Gaignard%YAML 1.2 37e0fc507SBenjamin Gaignard--- 47e0fc507SBenjamin Gaignard$id: http://devicetree.org/schemas/iommu/rockchip,iommu.yaml# 57e0fc507SBenjamin Gaignard$schema: http://devicetree.org/meta-schemas/core.yaml# 67e0fc507SBenjamin Gaignard 77e0fc507SBenjamin Gaignardtitle: Rockchip IOMMU 87e0fc507SBenjamin Gaignard 97e0fc507SBenjamin Gaignardmaintainers: 107e0fc507SBenjamin Gaignard - Heiko Stuebner <heiko@sntech.de> 117e0fc507SBenjamin Gaignard 127e0fc507SBenjamin Gaignarddescription: |+ 137e0fc507SBenjamin Gaignard A Rockchip DRM iommu translates io virtual addresses to physical addresses for 147e0fc507SBenjamin Gaignard its master device. Each slave device is bound to a single master device and 157e0fc507SBenjamin Gaignard shares its clocks, power domain and irq. 167e0fc507SBenjamin Gaignard 177e0fc507SBenjamin Gaignard For information on assigning IOMMU controller to its peripheral devices, 187e0fc507SBenjamin Gaignard see generic IOMMU bindings. 197e0fc507SBenjamin Gaignard 207e0fc507SBenjamin Gaignardproperties: 217e0fc507SBenjamin Gaignard compatible: 22*9e6f3cd5SBenjamin Gaignard enum: 23*9e6f3cd5SBenjamin Gaignard - rockchip,iommu 24*9e6f3cd5SBenjamin Gaignard - rockchip,rk3568-iommu 257e0fc507SBenjamin Gaignard 267e0fc507SBenjamin Gaignard reg: 277e0fc507SBenjamin Gaignard items: 287e0fc507SBenjamin Gaignard - description: configuration registers for MMU instance 0 297e0fc507SBenjamin Gaignard - description: configuration registers for MMU instance 1 307e0fc507SBenjamin Gaignard minItems: 1 317e0fc507SBenjamin Gaignard maxItems: 2 327e0fc507SBenjamin Gaignard 337e0fc507SBenjamin Gaignard interrupts: 347e0fc507SBenjamin Gaignard items: 357e0fc507SBenjamin Gaignard - description: interruption for MMU instance 0 367e0fc507SBenjamin Gaignard - description: interruption for MMU instance 1 377e0fc507SBenjamin Gaignard minItems: 1 387e0fc507SBenjamin Gaignard maxItems: 2 397e0fc507SBenjamin Gaignard 407e0fc507SBenjamin Gaignard clocks: 417e0fc507SBenjamin Gaignard items: 427e0fc507SBenjamin Gaignard - description: Core clock 437e0fc507SBenjamin Gaignard - description: Interface clock 447e0fc507SBenjamin Gaignard 457e0fc507SBenjamin Gaignard clock-names: 467e0fc507SBenjamin Gaignard items: 477e0fc507SBenjamin Gaignard - const: aclk 487e0fc507SBenjamin Gaignard - const: iface 497e0fc507SBenjamin Gaignard 507e0fc507SBenjamin Gaignard "#iommu-cells": 517e0fc507SBenjamin Gaignard const: 0 527e0fc507SBenjamin Gaignard 53*9e6f3cd5SBenjamin Gaignard power-domains: 54*9e6f3cd5SBenjamin Gaignard maxItems: 1 55*9e6f3cd5SBenjamin Gaignard 567e0fc507SBenjamin Gaignard rockchip,disable-mmu-reset: 577e0fc507SBenjamin Gaignard $ref: /schemas/types.yaml#/definitions/flag 587e0fc507SBenjamin Gaignard description: | 597e0fc507SBenjamin Gaignard Do not use the mmu reset operation. 607e0fc507SBenjamin Gaignard Some mmu instances may produce unexpected results 617e0fc507SBenjamin Gaignard when the reset operation is used. 627e0fc507SBenjamin Gaignard 637e0fc507SBenjamin Gaignardrequired: 647e0fc507SBenjamin Gaignard - compatible 657e0fc507SBenjamin Gaignard - reg 667e0fc507SBenjamin Gaignard - interrupts 677e0fc507SBenjamin Gaignard - clocks 687e0fc507SBenjamin Gaignard - clock-names 697e0fc507SBenjamin Gaignard - "#iommu-cells" 707e0fc507SBenjamin Gaignard 717e0fc507SBenjamin GaignardadditionalProperties: false 727e0fc507SBenjamin Gaignard 737e0fc507SBenjamin Gaignardexamples: 747e0fc507SBenjamin Gaignard - | 757e0fc507SBenjamin Gaignard #include <dt-bindings/clock/rk3399-cru.h> 767e0fc507SBenjamin Gaignard #include <dt-bindings/interrupt-controller/arm-gic.h> 777e0fc507SBenjamin Gaignard 787e0fc507SBenjamin Gaignard vopl_mmu: iommu@ff940300 { 797e0fc507SBenjamin Gaignard compatible = "rockchip,iommu"; 807e0fc507SBenjamin Gaignard reg = <0xff940300 0x100>; 817e0fc507SBenjamin Gaignard interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 827e0fc507SBenjamin Gaignard clocks = <&cru ACLK_VOP1>, <&cru HCLK_VOP1>; 837e0fc507SBenjamin Gaignard clock-names = "aclk", "iface"; 847e0fc507SBenjamin Gaignard #iommu-cells = <0>; 857e0fc507SBenjamin Gaignard }; 86