Re: [PATCH v4 2/3] dt-bindings: arm: Add Coresight Dummy Trace
From: Suzuki K Poulose <suzuki.poulose@arm.com>
Date: 2023-05-05 10:54:23
Also in:
linux-arm-msm, linux-devicetree, linux-doc, lkml
On 05/05/2023 10:24, Hao Zhang wrote:
quoted hunk ↗ jump to hunk
Add new coresight-dummy.yaml file describing the bindings required to define coresight dummy trace in the device trees. Signed-off-by: Hao Zhang <redacted> --- .../bindings/arm/arm,coresight-dummy.yaml | 102 ++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/arm,coresight-dummy.yamldiff --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 [off-list ref] Suzuki K Poulose [off-list ref] Leo Yan [off-list ref] 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>;
+ };
+ };
+ };
+ };
+
+..._______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel