On 05/05/2023 10:24, Hao Zhang wrote:
Add new coresight-dummy.yaml file describing the bindings required to define coresight dummy trace in the device trees.
Signed-off-by: Hao Zhang quic_hazha@quicinc.com
.../bindings/arm/arm,coresight-dummy.yaml | 102 ++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/arm,coresight-dummy.yaml
diff --git a/Documentation/devicetree/bindings/arm/arm,coresight-dummy.yaml b/Documentation/devicetree/bindings/arm/arm,coresight-dummy.yaml new file mode 100644 index 000000000000..126518863eea --- /dev/null +++ b/Documentation/devicetree/bindings/arm/arm,coresight-dummy.yaml @@ -0,0 +1,102 @@ +# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/arm/arm,coresight-dummy.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml#
+title: ARM Coresight Dummy component
+description: |
- Coresight Dummy Trace Module is for the specific devices that kernel
- don't have permission to access or configure, e.g., CoreSight TPDMs
- on Qualcomm platforms. So there need driver to register dummy devices
- as Coresight devices. It may also be used to define components that
- may not have any programming interfaces (e.g, static links), so that
- paths can be established in the driver. Provide Coresight API for
- dummy device operations, such as enabling and disabling dummy devices.
- Build the Coresight path for dummy sink or dummy source for debugging. > +
- The primary use case of the coresight dummy is to build path in kernel
- side for dummy sink and dummy source.
+maintainers:
- Mao Jinlong quic_jinlmao@quicinc.com
- Tao Zhang quic_taozha@quicinc.com
- Hao Zhang quic_hazha@quicinc.com
- Yuanfang Zhang quic_yuanfang@quicinc.com
Given this is a generic "CoreSight" component, I would prefer to have the CoreSight subsystem maintainers listed here (too). I don't mind the entries above, but would like to make sure that the subsystem people are aware of the changes happening here. Please use:
Mike Leach mike.leach@linaro.org Suzuki K Poulose suzuki.poulose@arm.com Leo Yan leo.yan@linaro.org
With the above:
Acked-by: Suzuki K Poulose suzuki.poulose@arm.com
+properties:
- compatible:
- items:
- enum:
- arm,coresight-dummy-sink
- arm,coresight-dummy-source
- out-ports:
- $ref: /schemas/graph.yaml#/properties/ports
- properties:
port:
description: Output connection from the source to Coresight
Trace bus.
$ref: /schemas/graph.yaml#/properties/port
- in-ports:
- $ref: /schemas/graph.yaml#/properties/ports
- properties:
port:
description: Input connection from the Coresight Trace bus to
dummy sink, such as Embedded USB debugger(EUD).
$ref: /schemas/graph.yaml#/properties/port
+required:
- compatible
+if:
- # If the compatible contains the below value
- properties:
- compatible:
contains:
const: arm,coresight-dummy-sink
+then:
- required:
- in-ports
+else:
- required:
- out-ports
+additionalProperties: false
+examples:
- # Minimum dummy sink definition. Dummy sink connect to coresight replicator.
- |
- sink {
compatible = "arm,coresight-dummy-sink";
in-ports {
port {
eud_in_replicator_swao: endpoint {
remote-endpoint = <&replicator_swao_out_eud>;
};
};
};
- };
- # Minimum dummy source definition. Dummy source connect to coresight funnel.
- |
- source {
compatible = "arm,coresight-dummy-source";
out-ports {
port {
dummy_riscv_out_funnel_swao: endpoint {
remote-endpoint = <&funnel_swao_in_dummy_riscv>;
};
};
};
- };
+...