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

From: Geert Uytterhoeven
Date: Thu Mar 07 2024 - 03:59:13 EST


Hi Prabhakar,

On Thu, Mar 7, 2024 at 12:11 AM Prabhakar <prabhakar.csengg@xxxxxxxxx> wrote:
> From: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
>
> This commit adds support to validate the 'interrupts' and 'interrupt-names'
> 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>

Thanks for your patch!

> --- a/Documentation/devicetree/bindings/serial/renesas,scif.yaml
> +++ b/Documentation/devicetree/bindings/serial/renesas,scif.yaml
> @@ -82,38 +82,6 @@ properties:
> reg:
> 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

As the above three groups are increasing supersets, you can just use
a single "items" listing all 6 interrupts, and describe the first one
as "Error interrupt or single combined interrupt". After that, the
SoC-specific logic at the end just needs to specify the appropriate
minItems/maxItems.

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

Likewise, with "interrupt-names: false" below for the ones that don't
need it.

> -
> clocks:
> minItems: 1
> maxItems: 4
> @@ -173,6 +141,91 @@ allOf:
> required:
> - resets
>
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - renesas,scif-r8a7742
> + - renesas,scif-r8a7743
> + - renesas,scif-r8a7744
> + - renesas,scif-r8a7745
> + - renesas,scif-r8a77470
> + - renesas,scif-r8a774a1
> + - renesas,scif-r8a774b1
> + - renesas,scif-r8a774c0
> + - renesas,scif-r8a774e1
> + - renesas,scif-r8a7778
> + - renesas,scif-r8a7779
> + - renesas,scif-r8a7790
> + - renesas,scif-r8a7791
> + - renesas,scif-r8a7792
> + - renesas,scif-r8a7793
> + - renesas,scif-r8a7794
> + - renesas,scif-r8a7795
> + - renesas,scif-r8a7796
> + - renesas,scif-r8a77961
> + - renesas,scif-r8a77965
> + - renesas,scif-r8a77970
> + - renesas,scif-r8a77980
> + - renesas,scif-r8a77990
> + - renesas,scif-r8a77995
> + - renesas,scif-r8a779a0
> + - renesas,scif-r8a779f0
> + - renesas,scif-r8a779g0

Please simplify using family-specific names:
- renesas,rcar-gen1-scif
- renesas,rcar-gen2-scif
- renesas,rcar-gen3-scif
- renesas,rcar-gen4-scif

> + then:
> + properties:
> + interrupts:
> + items:
> + - description: A combined interrupt

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68korg

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds