1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/arm/arm,coresight-tmc.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Arm CoreSight Trace Memory Controller 8 9maintainers: 10 - Mathieu Poirier <mathieu.poirier@linaro.org> 11 - Mike Leach <mike.leach@linaro.org> 12 - Leo Yan <leo.yan@linaro.org> 13 - Suzuki K Poulose <suzuki.poulose@arm.com> 14 15description: | 16 CoreSight components are compliant with the ARM CoreSight architecture 17 specification and can be connected in various topologies to suit a particular 18 SoCs tracing needs. These trace components can generally be classified as 19 sinks, links and sources. Trace data produced by one or more sources flows 20 through the intermediate links connecting the source to the currently selected 21 sink. 22 23 Trace Memory Controller is used for Embedded Trace Buffer(ETB), Embedded Trace 24 FIFO(ETF) and Embedded Trace Router(ETR) configurations. The configuration 25 mode (ETB, ETF, ETR) is discovered at boot time when the device is probed. 26 27# Need a custom select here or 'arm,primecell' will match on lots of nodes 28select: 29 properties: 30 compatible: 31 contains: 32 const: arm,coresight-tmc 33 required: 34 - compatible 35 36allOf: 37 - $ref: /schemas/arm/primecell.yaml# 38 39properties: 40 compatible: 41 items: 42 - const: arm,coresight-tmc 43 - const: arm,primecell 44 45 reg: 46 maxItems: 1 47 48 clocks: 49 minItems: 1 50 maxItems: 2 51 52 clock-names: 53 minItems: 1 54 items: 55 - const: apb_pclk 56 - const: atclk 57 58 arm,buffer-size: 59 $ref: /schemas/types.yaml#/definitions/uint32 60 deprecated: true 61 description: 62 Size of contiguous buffer space for TMC ETR (embedded trace router). The 63 buffer size can be configured dynamically via buffer_size property in 64 sysfs instead. 65 66 arm,scatter-gather: 67 type: boolean 68 description: 69 Indicates that the TMC-ETR can safely use the SG mode on this system. 70 71 arm,max-burst-size: 72 description: 73 The maximum burst size initiated by TMC on the AXI master interface. The 74 burst size can be in the range [0..15], the setting supports one data 75 transfer per burst up to a maximum of 16 data transfers per burst. 76 $ref: /schemas/types.yaml#/definitions/uint32 77 maximum: 15 78 79 in-ports: 80 $ref: /schemas/graph.yaml#/properties/ports 81 additionalProperties: false 82 83 properties: 84 port: 85 description: Input connection from the CoreSight Trace bus. 86 $ref: /schemas/graph.yaml#/properties/port 87 88 out-ports: 89 $ref: /schemas/graph.yaml#/properties/ports 90 additionalProperties: false 91 92 properties: 93 port: 94 description: AXI or ATB Master output connection. Used for ETR 95 and ETF configurations. 96 $ref: /schemas/graph.yaml#/properties/port 97 98required: 99 - compatible 100 - reg 101 - clocks 102 - clock-names 103 - in-ports 104 105unevaluatedProperties: false 106 107examples: 108 - | 109 etr@20070000 { 110 compatible = "arm,coresight-tmc", "arm,primecell"; 111 reg = <0x20070000 0x1000>; 112 113 clocks = <&oscclk6a>; 114 clock-names = "apb_pclk"; 115 in-ports { 116 port { 117 etr_in_port: endpoint { 118 remote-endpoint = <&replicator2_out_port0>; 119 }; 120 }; 121 }; 122 123 out-ports { 124 port { 125 etr_out_port: endpoint { 126 remote-endpoint = <&catu_in_port>; 127 }; 128 }; 129 }; 130 }; 131... 132