Re: [PATCH v2 2/2] dt-bindings: serial: renesas,scif: Validate 'interrupts' and 'interrupt-names'

From: Krzysztof Kozlowski
Date: Thu Mar 07 2024 - 08:50:51 EST


On 07/03/2024 12:42, Prabhakar wrote:
> From: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
>
> This commit adds support to validate the 'interrupts' and 'interrupt-names'

Please do not use "This commit/patch/change", but imperative mood. See
longer explanation here:
https://elixir.bootlin.com/linux/v5.17.1/source/Documentation/process/submitting-patches.rst#L95

> properties for every supported SoC. This ensures proper handling and
> configuration of interrupt-related properties across supported platforms.
>
> Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
> ---
> v1->v2
> * Defined the properties in top-level block instead of moving into
> if/else block for each SoC.
> * Used Gen specific callback strings instead of each SoC variant

You are sending quite a lot of patchsets touching the same, all in one
day. This just adds to the confusion.

> ---
> .../bindings/serial/renesas,scif.yaml | 90 +++++++++++++------
> 1 file changed, 62 insertions(+), 28 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/serial/renesas,scif.yaml b/Documentation/devicetree/bindings/serial/renesas,scif.yaml
> index af72c3420453..6ba6b6d52208 100644
> --- a/Documentation/devicetree/bindings/serial/renesas,scif.yaml
> +++ b/Documentation/devicetree/bindings/serial/renesas,scif.yaml
> @@ -83,36 +83,24 @@ properties:
> maxItems: 1
>
> interrupts:
> - oneOf:
> - - items:
> - - description: A combined interrupt
> - - items:
> - - description: Error interrupt
> - - description: Receive buffer full interrupt
> - - description: Transmit buffer empty interrupt
> - - description: Break interrupt
> - - items:
> - - description: Error interrupt
> - - description: Receive buffer full interrupt
> - - description: Transmit buffer empty interrupt
> - - description: Break interrupt
> - - description: Data Ready interrupt
> - - description: Transmit End interrupt
> + minItems: 1
> + items:
> + - description: Error interrupt or single combined interrupt

That's not correct, your first interrupt can be combined.

> + - description: Receive buffer full interrupt
> + - description: Transmit buffer empty interrupt
> + - description: Break interrupt
> + - description: Data Ready interrupt
> + - description: Transmit End interrupt
>
> interrupt-names:
> - oneOf:
> - - items:
> - - const: eri
> - - const: rxi
> - - const: txi
> - - const: bri
> - - items:
> - - const: eri
> - - const: rxi
> - - const: txi
> - - const: bri
> - - const: dri
> - - const: tei
> + minItems: 4
> + items:
> + - const: eri
> + - const: rxi
> + - const: txi
> + - const: bri
> + - const: dri
> + - const: tei
>
> clocks:
> minItems: 1
> @@ -173,6 +161,52 @@ allOf:
> required:
> - resets
>
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - renesas,rcar-gen1-scif
> + - renesas,rcar-gen2-scif
> + - renesas,rcar-gen3-scif
> + - renesas,rcar-gen4-scif
> + then:
> + properties:
> + interrupts:
> + maxItems: 1

You need to list the items here.

> +
> + interrupt-names: false
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - renesas,scif-r7s72100
> + then:
> + properties:
> + interrupts:
> + minItems: 4
> + maxItems: 4

List the items

> +
> + interrupt-names:
> + maxItems: 4
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - renesas,scif-r7s9210
> + - renesas,scif-r9a07g044
> + then:
> + properties:
> + interrupts:
> + minItems: 6

List the items

> +
> + interrupt-names:
> + minItems: 6
> +
> unevaluatedProperties: false
>
> examples:

Best regards,
Krzysztof