1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2 # Copyright 2021, Arm Ltd
5 $id: http://devicetree.org/schemas/arm/arm,embedded-trace-extension.yaml#
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
8 title: ARM Embedded Trace Extensions
11 - Suzuki K Poulose <suzuki.poulose@arm.com>
12 - Mathieu Poirier <mathieu.poirier@linaro.org>
15 Arm Embedded Trace Extension(ETE) is a per CPU trace component that
16 allows tracing the CPU execution. It overlaps with the CoreSight ETMv4
17 architecture and has extended support for future architecture changes.
18 The trace generated by the ETE could be stored via legacy CoreSight
19 components (e.g, TMC-ETR) or other means (e.g, using a per CPU buffer
20 Arm Trace Buffer Extension (TRBE)). Since the ETE can be connected to
21 legacy CoreSight components, a node must be listed per instance, along
22 with any optional connection graph as per the coresight bindings.
26 pattern: "^ete([0-9a-f]+)$"
29 - const: arm,embedded-trace-extension
33 Handle to the cpu this ETE is bound to.
34 $ref: /schemas/types.yaml#/definitions/phandle
41 Output connections from the ETE to legacy CoreSight trace bus.
42 $ref: /schemas/graph.yaml#/properties/ports
45 description: Output connection from the ETE to legacy CoreSight Trace bus.
46 $ref: /schemas/graph.yaml#/properties/port
52 additionalProperties: false
56 # An ETE node without legacy CoreSight connections
59 compatible = "arm,embedded-trace-extension";
62 # An ETE node with legacy CoreSight connections
65 compatible = "arm,embedded-trace-extension";
68 out-ports { /* legacy coresight connection */
70 ete1_out_port: endpoint {
71 remote-endpoint = <&funnel_in_port0>;