^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) # Copyright 2021, Arm Ltd
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) %YAML 1.2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) ---
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) $id: "http://devicetree.org/schemas/arm/ete.yaml#"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) $schema: "http://devicetree.org/meta-schemas/core.yaml#"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) title: ARM Embedded Trace Extensions
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) maintainers:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) - Suzuki K Poulose <suzuki.poulose@arm.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) - Mathieu Poirier <mathieu.poirier@linaro.org>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) description: |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) Arm Embedded Trace Extension(ETE) is a per CPU trace component that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) allows tracing the CPU execution. It overlaps with the CoreSight ETMv4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) architecture and has extended support for future architecture changes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) The trace generated by the ETE could be stored via legacy CoreSight
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) components (e.g, TMC-ETR) or other means (e.g, using a per CPU buffer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Arm Trace Buffer Extension (TRBE)). Since the ETE can be connected to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) legacy CoreSight components, a node must be listed per instance, along
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) with any optional connection graph as per the coresight bindings.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) See bindings/arm/coresight.txt.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) $nodename:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) pattern: "^ete([0-9a-f]+)$"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) compatible:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) items:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) - const: arm,embedded-trace-extension
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) cpu:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) description: |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) Handle to the cpu this ETE is bound to.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) $ref: /schemas/types.yaml#/definitions/phandle
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) out-ports:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) description: |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) Output connections from the ETE to legacy CoreSight trace bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) $ref: /schemas/graph.yaml#/properties/ports
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) port:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) description: Output connection from the ETE to legacy CoreSight Trace bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) $ref: /schemas/graph.yaml#/properties/port required:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) required:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) - compatible
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) - cpu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) additionalProperties: false
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) examples:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) # An ETE node without legacy CoreSight connections
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) - |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) ete0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) compatible = "arm,embedded-trace-extension";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) cpu = <&cpu_0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) # An ETE node with legacy CoreSight connections
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) - |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) ete1 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) compatible = "arm,embedded-trace-extension";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) cpu = <&cpu_1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) out-ports { /* legacy coresight connection */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) port {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) ete1_out_port: endpoint {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) remote-endpoint = <&funnel_in_port0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) ...