Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
0002 # Copyright 2021, Arm Ltd
0003 %YAML 1.2
0004 ---
0005 $id: "http://devicetree.org/schemas/arm/arm,embedded-trace-extension.yaml#"
0006 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
0007 
0008 title: ARM Embedded Trace Extensions
0009 
0010 maintainers:
0011   - Suzuki K Poulose <suzuki.poulose@arm.com>
0012   - Mathieu Poirier <mathieu.poirier@linaro.org>
0013 
0014 description: |
0015   Arm Embedded Trace Extension(ETE) is a per CPU trace component that
0016   allows tracing the CPU execution. It overlaps with the CoreSight ETMv4
0017   architecture and has extended support for future architecture changes.
0018   The trace generated by the ETE could be stored via legacy CoreSight
0019   components (e.g, TMC-ETR) or other means (e.g, using a per CPU buffer
0020   Arm Trace Buffer Extension (TRBE)). Since the ETE can be connected to
0021   legacy CoreSight components, a node must be listed per instance, along
0022   with any optional connection graph as per the coresight bindings.
0023 
0024 properties:
0025   $nodename:
0026     pattern: "^ete([0-9a-f]+)$"
0027   compatible:
0028     items:
0029       - const: arm,embedded-trace-extension
0030 
0031   cpu:
0032     description: |
0033       Handle to the cpu this ETE is bound to.
0034     $ref: /schemas/types.yaml#/definitions/phandle
0035 
0036   out-ports:
0037     description: |
0038       Output connections from the ETE to legacy CoreSight trace bus.
0039     $ref: /schemas/graph.yaml#/properties/ports
0040     properties:
0041       port:
0042         description: Output connection from the ETE to legacy CoreSight Trace bus.
0043         $ref: /schemas/graph.yaml#/properties/port
0044 
0045 required:
0046   - compatible
0047   - cpu
0048 
0049 additionalProperties: false
0050 
0051 examples:
0052 
0053 # An ETE node without legacy CoreSight connections
0054   - |
0055     ete0 {
0056       compatible = "arm,embedded-trace-extension";
0057       cpu = <&cpu_0>;
0058     };
0059 # An ETE node with legacy CoreSight connections
0060   - |
0061    ete1 {
0062       compatible = "arm,embedded-trace-extension";
0063       cpu = <&cpu_1>;
0064 
0065       out-ports {        /* legacy coresight connection */
0066          port {
0067              ete1_out_port: endpoint {
0068                 remote-endpoint = <&funnel_in_port0>;
0069              };
0070          };
0071       };
0072    };
0073 
0074 ...