Re: [PATCH v1 2/2] dt-bindings: arm: Add remote etm driver

From: Krzysztof Kozlowski
Date: Tue Nov 07 2023 - 10:30:40 EST


On 07/11/2023 07:09, Mao Jinlong wrote:
> Add new coresight-remote-etm.yaml file describing the bindings required
> to define coresight remote etm in the device trees.

Subject: drop driver. Bindings are about hardware, not drivers.

>
> Signed-off-by: Mao Jinlong <quic_jinlmao@xxxxxxxxxxx>
> ---
> .../arm/qcom,coresight-remote-etm.yaml | 59 +++++++++++++++++++
> 1 file changed, 59 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml
>
> diff --git a/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml b/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml
> new file mode 100644
> index 000000000000..04bb57b48d96
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml
> @@ -0,0 +1,59 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/arm/qcom,coresight-remote-etm.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm Coresight Remote ETM

What is ETM?

> +
> +maintainers:
> + - Jinlong Mao <quic_jinlmao@xxxxxxxxxxx>
> + - Tao Zhang <quic_taozha@xxxxxxxxxxx>
> +
> +description: |

Do not need '|' unless you need to preserve formatting.

> + Support for ETM trace collection on remote processor using coresight
> + framework. Enabling this will allow turning on ETM tracing on remote
> + processor via sysfs and collecting the trace via TMC sinks.
> +
> +properties:
> + compatible:
> + items:
> + - const: qcom,coresight-remote-etm
> +
> + qcom,inst-id:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description:
> + Instance id of remote etm.

It's the first time this property appears... Why do you need to
hard-code it and why would it differ between each board? If you want to
use existing, accepted property, then you must use exactly the same.

> +
> + out-ports:
> + $ref: /schemas/graph.yaml#/properties/ports
> + additionalProperties: false
> +
> + properties:
> + port:
> + description: Output connection to the CoreSight Trace bus.
> + $ref: /schemas/graph.yaml#/properties/port
> +
> +required:
> + - compatible
> + - qcom,inst-id
> + - out-ports
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + modem_etm0 {

Node names should be generic. See also an explanation and list of
examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation

Underscores are not allowed.

> + compatible = "qcom,coresight-remote-etm";
> + qcom,inst-id = <2>;
> +
> + out-ports {
> + port {
> + modem_etm0_out_funnel_modem: endpoint {
> + remote-endpoint =
> + <&funnel_modem_in_modem_etm0>;

Fix wrapping.

> + };
> + };
> + };
> + };
> +...

Best regards,
Krzysztof