xref: /freebsd/sys/contrib/device-tree/Bindings/perf/arm,cmn.yaml (revision d5b0e70f7e04d971691517ce1304d86a1e367e2e)
16be33864SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
26be33864SEmmanuel Vadot# Copyright 2020 Arm Ltd.
36be33864SEmmanuel Vadot%YAML 1.2
46be33864SEmmanuel Vadot---
56be33864SEmmanuel Vadot$id: http://devicetree.org/schemas/perf/arm,cmn.yaml#
66be33864SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
76be33864SEmmanuel Vadot
86be33864SEmmanuel Vadottitle: Arm CMN (Coherent Mesh Network) Performance Monitors
96be33864SEmmanuel Vadot
106be33864SEmmanuel Vadotmaintainers:
116be33864SEmmanuel Vadot  - Robin Murphy <robin.murphy@arm.com>
126be33864SEmmanuel Vadot
136be33864SEmmanuel Vadotproperties:
146be33864SEmmanuel Vadot  compatible:
15e67e8565SEmmanuel Vadot    enum:
16e67e8565SEmmanuel Vadot      - arm,cmn-600
17*d5b0e70fSEmmanuel Vadot      - arm,cmn-650
18*d5b0e70fSEmmanuel Vadot      - arm,cmn-700
19e67e8565SEmmanuel Vadot      - arm,ci-700
206be33864SEmmanuel Vadot
216be33864SEmmanuel Vadot  reg:
226be33864SEmmanuel Vadot    items:
236be33864SEmmanuel Vadot      - description: Physical address of the base (PERIPHBASE) and
24e67e8565SEmmanuel Vadot          size of the configuration address space.
256be33864SEmmanuel Vadot
266be33864SEmmanuel Vadot  interrupts:
276be33864SEmmanuel Vadot    minItems: 1
286be33864SEmmanuel Vadot    items:
296be33864SEmmanuel Vadot      - description: Overflow interrupt for DTC0
306be33864SEmmanuel Vadot      - description: Overflow interrupt for DTC1
316be33864SEmmanuel Vadot      - description: Overflow interrupt for DTC2
326be33864SEmmanuel Vadot      - description: Overflow interrupt for DTC3
336be33864SEmmanuel Vadot    description: One interrupt for each DTC domain implemented must
346be33864SEmmanuel Vadot      be specified, in order. DTC0 is always present.
356be33864SEmmanuel Vadot
366be33864SEmmanuel Vadot  arm,root-node:
376be33864SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
38e67e8565SEmmanuel Vadot    description: Offset from PERIPHBASE of CMN-600's configuration
39e67e8565SEmmanuel Vadot      discovery node (see TRM definition of ROOTNODEBASE). Not
40e67e8565SEmmanuel Vadot      relevant for newer CMN/CI products.
416be33864SEmmanuel Vadot
426be33864SEmmanuel Vadotrequired:
436be33864SEmmanuel Vadot  - compatible
446be33864SEmmanuel Vadot  - reg
456be33864SEmmanuel Vadot  - interrupts
46e67e8565SEmmanuel Vadot
47e67e8565SEmmanuel Vadotif:
48e67e8565SEmmanuel Vadot  properties:
49e67e8565SEmmanuel Vadot    compatible:
50e67e8565SEmmanuel Vadot      contains:
51e67e8565SEmmanuel Vadot        const: arm,cmn-600
52e67e8565SEmmanuel Vadotthen:
53e67e8565SEmmanuel Vadot  required:
546be33864SEmmanuel Vadot    - arm,root-node
556be33864SEmmanuel Vadot
566be33864SEmmanuel VadotadditionalProperties: false
576be33864SEmmanuel Vadot
586be33864SEmmanuel Vadotexamples:
596be33864SEmmanuel Vadot  - |
606be33864SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
616be33864SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
626be33864SEmmanuel Vadot    pmu@50000000 {
636be33864SEmmanuel Vadot        compatible = "arm,cmn-600";
646be33864SEmmanuel Vadot        reg = <0x50000000 0x4000000>;
656be33864SEmmanuel Vadot        /* 4x2 mesh with one DTC, and CFG node at 0,1,1,0 */
666be33864SEmmanuel Vadot        interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
676be33864SEmmanuel Vadot        arm,root-node = <0x104000>;
686be33864SEmmanuel Vadot    };
696be33864SEmmanuel Vadot...
70