xref: /linux/Documentation/devicetree/bindings/arm/arm,coresight-dummy-source.yaml (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1440b075bSKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
25911ff45SHao Zhang%YAML 1.2
35911ff45SHao Zhang---
45911ff45SHao Zhang$id: http://devicetree.org/schemas/arm/arm,coresight-dummy-source.yaml#
55911ff45SHao Zhang$schema: http://devicetree.org/meta-schemas/core.yaml#
65911ff45SHao Zhang
75911ff45SHao Zhangtitle: ARM Coresight Dummy source component
85911ff45SHao Zhang
95911ff45SHao Zhangdescription: |
105911ff45SHao Zhang  CoreSight components are compliant with the ARM CoreSight architecture
115911ff45SHao Zhang  specification and can be connected in various topologies to suit a particular
125911ff45SHao Zhang  SoCs tracing needs. These trace components can generally be classified as
135911ff45SHao Zhang  sinks, links and sources. Trace data produced by one or more sources flows
145911ff45SHao Zhang  through the intermediate links connecting the source to the currently selected
155911ff45SHao Zhang  sink.
165911ff45SHao Zhang
175911ff45SHao Zhang  The Coresight dummy source component is for the specific coresight source
185911ff45SHao Zhang  devices kernel don't have permission to access or configure. For some SOCs,
195911ff45SHao Zhang  there would be Coresight source trace components on sub-processor which
20*a7fcc232SYu-Chun Lin  are connected to AP processor via debug bus. For these devices, a dummy driver
215911ff45SHao Zhang  is needed to register them as Coresight source devices, so that paths can be
225911ff45SHao Zhang  created in the driver. It provides Coresight API for operations on dummy
235911ff45SHao Zhang  source devices, such as enabling and disabling them. It also provides the
245911ff45SHao Zhang  Coresight dummy source paths for debugging.
255911ff45SHao Zhang
265911ff45SHao Zhang  The primary use case of the coresight dummy source is to build path in kernel
275911ff45SHao Zhang  side for dummy source component.
285911ff45SHao Zhang
295911ff45SHao Zhangmaintainers:
305911ff45SHao Zhang  - Mike Leach <mike.leach@linaro.org>
315911ff45SHao Zhang  - Suzuki K Poulose <suzuki.poulose@arm.com>
3234e526f6SJames Clark  - James Clark <james.clark@linaro.org>
335911ff45SHao Zhang  - Mao Jinlong <quic_jinlmao@quicinc.com>
345911ff45SHao Zhang  - Hao Zhang <quic_hazha@quicinc.com>
355911ff45SHao Zhang
365911ff45SHao Zhangproperties:
375911ff45SHao Zhang  compatible:
385911ff45SHao Zhang    enum:
395911ff45SHao Zhang      - arm,coresight-dummy-source
405911ff45SHao Zhang
415911ff45SHao Zhang  out-ports:
425911ff45SHao Zhang    $ref: /schemas/graph.yaml#/properties/ports
435911ff45SHao Zhang
445911ff45SHao Zhang    properties:
455911ff45SHao Zhang      port:
465911ff45SHao Zhang        description: Output connection from the source to Coresight
475911ff45SHao Zhang          Trace bus.
485911ff45SHao Zhang        $ref: /schemas/graph.yaml#/properties/port
495911ff45SHao Zhang
505911ff45SHao Zhangrequired:
515911ff45SHao Zhang  - compatible
525911ff45SHao Zhang  - out-ports
535911ff45SHao Zhang
545911ff45SHao ZhangadditionalProperties: false
555911ff45SHao Zhang
565911ff45SHao Zhangexamples:
575911ff45SHao Zhang  # Minimum dummy source definition. Dummy source connect to coresight funnel.
585911ff45SHao Zhang  - |
595911ff45SHao Zhang    source {
605911ff45SHao Zhang      compatible = "arm,coresight-dummy-source";
615911ff45SHao Zhang
625911ff45SHao Zhang      out-ports {
635911ff45SHao Zhang        port {
645911ff45SHao Zhang          dummy_riscv_out_funnel_swao: endpoint {
655911ff45SHao Zhang            remote-endpoint = <&funnel_swao_in_dummy_riscv>;
665911ff45SHao Zhang          };
675911ff45SHao Zhang        };
685911ff45SHao Zhang      };
695911ff45SHao Zhang    };
705911ff45SHao Zhang
715911ff45SHao Zhang...
72