# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/perf/arm,smmu-v3-pmcg.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Arm SMMUv3 Performance Monitor Counter Group maintainers: - Will Deacon <will@kernel.org> - Robin Murphy <robin.murphy@arm.com> description: | An SMMUv3 may have several Performance Monitor Counter Group (PMCG). They are standalone performance monitoring units that support both architected and IMPLEMENTATION DEFINED event counters. properties: $nodename: pattern: "^pmu@[0-9a-f]*" compatible: oneOf: - items: - const: arm,mmu-600-pmcg - const: arm,smmu-v3-pmcg - const: arm,smmu-v3-pmcg reg: items: - description: Register page 0 - description: Register page 1, if SMMU_PMCG_CFGR.RELOC_CTRS = 1 minItems: 1 interrupts: maxItems: 1 msi-parent: true required: - compatible - reg anyOf: - required: - interrupts - required: - msi-parent additionalProperties: false examples: - | #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/irq.h> pmu@2b420000 { compatible = "arm,smmu-v3-pmcg"; reg = <0x2b420000 0x1000>, <0x2b430000 0x1000>; interrupts = <GIC_SPI 80 IRQ_TYPE_EDGE_RISING>; msi-parent = <&its 0xff0000>; }; pmu@2b440000 { compatible = "arm,smmu-v3-pmcg"; reg = <0x2b440000 0x1000>, <0x2b450000 0x1000>; interrupts = <GIC_SPI 81 IRQ_TYPE_EDGE_RISING>; msi-parent = <&its 0xff0000>; };