Commit e7cc4f23 authored by Suzuki K Poulose's avatar Suzuki K Poulose Committed by Mathieu Poirier
Browse files

dts: bindings: Document device tree bindings for ETE



Document the device tree bindings for Embedded Trace Extensions.
ETE can be connected to legacy coresight components and thus
could optionally contain a connection graph as described by
the CoreSight bindings.

Cc: devicetree@vger.kernel.org
Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Mike Leach <mike.leach@linaro.org>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarSuzuki K Poulose <suzuki.poulose@arm.com>
Link: https://lore.kernel.org/r/20210405164307.1720226-15-suzuki.poulose@arm.com


Signed-off-by: default avatarMathieu Poirier <mathieu.poirier@linaro.org>
parent 35e1c916
Loading
Loading
Loading
Loading
+75 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
# Copyright 2021, Arm Ltd
%YAML 1.2
---
$id: "http://devicetree.org/schemas/arm/ete.yaml#"
$schema: "http://devicetree.org/meta-schemas/core.yaml#"

title: ARM Embedded Trace Extensions

maintainers:
  - Suzuki K Poulose <suzuki.poulose@arm.com>
  - Mathieu Poirier <mathieu.poirier@linaro.org>

description: |
  Arm Embedded Trace Extension(ETE) is a per CPU trace component that
  allows tracing the CPU execution. It overlaps with the CoreSight ETMv4
  architecture and has extended support for future architecture changes.
  The trace generated by the ETE could be stored via legacy CoreSight
  components (e.g, TMC-ETR) or other means (e.g, using a per CPU buffer
  Arm Trace Buffer Extension (TRBE)). Since the ETE can be connected to
  legacy CoreSight components, a node must be listed per instance, along
  with any optional connection graph as per the coresight bindings.
  See bindings/arm/coresight.txt.

properties:
  $nodename:
    pattern: "^ete([0-9a-f]+)$"
  compatible:
    items:
      - const: arm,embedded-trace-extension

  cpu:
    description: |
      Handle to the cpu this ETE is bound to.
    $ref: /schemas/types.yaml#/definitions/phandle

  out-ports:
    description: |
      Output connections from the ETE to legacy CoreSight trace bus.
    $ref: /schemas/graph.yaml#/properties/ports
    properties:
      port:
        description: Output connection from the ETE to legacy CoreSight Trace bus.
        $ref: /schemas/graph.yaml#/properties/port

required:
  - compatible
  - cpu

additionalProperties: false

examples:

# An ETE node without legacy CoreSight connections
  - |
    ete0 {
      compatible = "arm,embedded-trace-extension";
      cpu = <&cpu_0>;
    };
# An ETE node with legacy CoreSight connections
  - |
   ete1 {
      compatible = "arm,embedded-trace-extension";
      cpu = <&cpu_1>;

      out-ports {        /* legacy coresight connection */
         port {
             ete1_out_port: endpoint {
                remote-endpoint = <&funnel_in_port0>;
             };
         };
      };
   };

...
+1 −0
Original line number Diff line number Diff line
@@ -1761,6 +1761,7 @@ F: Documentation/ABI/testing/sysfs-bus-coresight-devices-*
F:	Documentation/devicetree/bindings/arm/coresight-cpu-debug.txt
F:	Documentation/devicetree/bindings/arm/coresight-cti.yaml
F:	Documentation/devicetree/bindings/arm/coresight.txt
F:	Documentation/devicetree/bindings/arm/ete.yaml
F:	Documentation/trace/coresight/*
F:	drivers/hwtracing/coresight/*
F:	include/dt-bindings/arm/coresight-cti-dt.h