Re: [PATCH v4 2/3] dt-bindings: arm: Add Coresight Dummy Trace

From: Krzysztof Kozlowski
Date: Sun May 07 2023 - 04:04:32 EST


On 05/05/2023 11: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@xxxxxxxxxxx>
> ---
> .../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@xxxxxxxxxxx>
> + - Tao Zhang <quic_taozha@xxxxxxxxxxx>
> + - Hao Zhang <quic_hazha@xxxxxxxxxxx>
> + - Yuanfang Zhang <quic_yuanfang@xxxxxxxxxxx>
> +
> +properties:
> + compatible:
> + items:

You were asked to drop oneOf, not to replace with items. Drop items.
Drop oneOf. It's just enum.

> + - 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

No improvements. Implement Rob's comments.

Best regards,
Krzysztof