linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Lad, Prabhakar" <prabhakar.csengg@gmail.com>
To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Cc: Geert Uytterhoeven <geert+renesas@glider.be>,
	 Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jiri Slaby <jirislaby@kernel.org>,
	 Rob Herring <robh+dt@kernel.org>,
	 Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	 Magnus Damm <magnus.damm@gmail.com>,
	linux-kernel@vger.kernel.org,  linux-serial@vger.kernel.org,
	devicetree@vger.kernel.org,  linux-renesas-soc@vger.kernel.org,
	 Fabrizio Castro <fabrizio.castro.jz@renesas.com>,
	 Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Subject: Re: [PATCH v2 2/2] dt-bindings: serial: renesas,scif: Validate 'interrupts' and 'interrupt-names'
Date: Fri, 8 Mar 2024 10:18:58 +0000	[thread overview]
Message-ID: <CA+V-a8txZr8WWxtN-=Ek3WZ3GwLT3m+Tcog-5zAx+A4kZL1=yQ@mail.gmail.com> (raw)
In-Reply-To: <4ba7af38-5cc1-428a-afec-75610934fc72@linaro.org>

Hi Krzysztof,

Thank you for the review.

On Thu, Mar 7, 2024 at 1:50 PM Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> wrote:
>
> On 07/03/2024 12:42, Prabhakar wrote:
> > From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
> >
> > 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
>
Sure, I will update the description.

> > 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@bp.renesas.com>
> > ---
> > 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.
>
Ok, I'll make it as a single series.

> > ---
> >  .../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.
>
In here we are combining and making a single list hence the
description is updated as "Error interrupt or single combined
interrupt". so that we dont have to list the items in the below
if/else checks. Also when the interrupts are combined we dont specify
interrupt-names hence in the below check we  set "interrupt-names:
false"

> > +      - 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.
>
Shouldn't the already squashed interrupts list still be valid here?
Why do we need to list the item here (and below)? If we list items for
interrupts should we be doing the same for interrupt-names too?

Cheers,
Prabhakar

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

  reply	other threads:[~2024-03-08 10:20 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-07 11:42 [PATCH v2 0/2] dt-bindings: serial: renesas,scif: Validate 'interrupts' and 'interrupt-names' Prabhakar
2024-03-07 11:42 ` [PATCH v2 1/2] dt-bindings: serial: renesas,scif: Move ref for serial.yaml at the end Prabhakar
2024-03-07 11:42 ` [PATCH v2 2/2] dt-bindings: serial: renesas,scif: Validate 'interrupts' and 'interrupt-names' Prabhakar
2024-03-07 13:19   ` Geert Uytterhoeven
2024-03-07 13:50   ` Krzysztof Kozlowski
2024-03-08 10:18     ` Lad, Prabhakar [this message]
2024-03-08 16:35       ` Krzysztof Kozlowski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CA+V-a8txZr8WWxtN-=Ek3WZ3GwLT3m+Tcog-5zAx+A4kZL1=yQ@mail.gmail.com' \
    --to=prabhakar.csengg@gmail.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=fabrizio.castro.jz@renesas.com \
    --cc=geert+renesas@glider.be \
    --cc=gregkh@linuxfoundation.org \
    --cc=jirislaby@kernel.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=krzysztof.kozlowski@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=linux-serial@vger.kernel.org \
    --cc=magnus.damm@gmail.com \
    --cc=prabhakar.mahadev-lad.rj@bp.renesas.com \
    --cc=robh+dt@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).