[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20240828132900.GB27131@pendragon.ideasonboard.com>
Date: Wed, 28 Aug 2024 16:29:00 +0300
From: Laurent Pinchart <laurent.pinchart@...asonboard.com>
To: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Cc: Kieran Bingham <kieran.bingham+renesas@...asonboard.com>,
David Airlie <airlied@...il.com>, Daniel Vetter <daniel@...ll.ch>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard <mripard@...nel.org>,
Thomas Zimmermann <tzimmermann@...e.de>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Geert Uytterhoeven <geert+renesas@...der.be>,
Magnus Damm <magnus.damm@...il.com>,
dri-devel@...ts.freedesktop.org, linux-renesas-soc@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/2] dt-bindings: display: renesas,du: narrow interrupts
and resets per variants
On Wed, Aug 28, 2024 at 02:52:25PM +0200, Krzysztof Kozlowski wrote:
> On 28/08/2024 14:45, Laurent Pinchart wrote:
> > On Sun, Aug 18, 2024 at 08:48:54PM +0200, Krzysztof Kozlowski wrote:
> >> On 18/08/2024 19:51, Laurent Pinchart wrote:
> >>> On Sun, Aug 18, 2024 at 07:44:22PM +0200, Krzysztof Kozlowski wrote:
> >>>> On 18/08/2024 19:41, Laurent Pinchart wrote:
> >>>>> On Sun, Aug 18, 2024 at 07:30:02PM +0200, Krzysztof Kozlowski wrote:
> >>>>>> Each variable-length property like interrupts or resets must have fixed
> >>>>>> constraints on number of items for given variant in binding. The
> >>>>>> clauses in "if:then:" block should define both limits: upper and lower.
> >>>>>
> >>>>> I thought that, when only one of minItems or maxItems was specified, the
> >>>>> other automatically defaulted to the same value. I'm pretty sure I
> >>>>> recall Rob asking me to drop one of the two in some bindings. Has the
> >>>>> rule changes ? Is it documented somewhere ?
> >>>>
> >>>> New dtschema changed it and, even if previous behavior is restored, the
> >>>> size in if:then: always had to be constrained. You could have skipped
> >>>> one side of limit if it was equal to outer/top-level limit, e.g:
> >>>>
> >>>> properties:
> >>>> clocks:
> >>>> minItems: 1
> >>>> maxItems: 2
> >>>>
> >>>>
> >>>> if:then:properties:
> >>>> clocks:
> >>>> minItems: 2
> >>>
> >>> Where can I find a description of the behaviour of the new dtschema
> >>> (hopefully with some documentation) ?
> >>
> >> No clue, but I feel there is some core concept missing. Your earlier
> >> statement:
> >> "I thought that, when only one of minItems or maxItems was specified, the"
> >>
> >> was never logically correct for the "if:then", except for the case I
> >> mentioned above. That's why all schema used as examples had it explicit:
> >>
> >> My talk from 2022, page 30:
> >> https://static.sched.com/hosted_files/osseu2022/bd/How%20to%20Get%20Your%20DT%20Schema%20Bindings%20Accepted%20in%20Less%20than%2010%20Iterations%20-%20Krzysztof%20Kozlowski%2C%20Linaro.pdf?_gl=1*kmzqmt*_gcl_au*MTU2MzQ1MjY0Mi4xNzIxNzE0NDc1
> >> all constraints defined,.
> >>
> >> My talk from 2023, page 34:
> >> https://static.sched.com/hosted_files/eoss2023/a8/How%20to%20Get%20Your%20DT%20Schema%20Bindings%20Accepted%20in%20Less%20than%2010%20Iterations%20-%20Krzysztof%20Kozlowski%2C%20Linaro%20-%20ELCE%202023.pdf?_gl=1*1jgx6d3*_gcl_au*MTU2MzQ1MjY0Mi4xNzIxNzE0NDc1
> >>
> >> Recently, I started using other example as "useful reference":
> >> https://elixir.bootlin.com/linux/v6.8/source/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml#L132
> >>
> >> That's nothing. All three above reference examples I keep giving are
> >> already there and repeated in emails all the time.
> >>
> >> So aren't you confusing the entire "skip one limit" for top-level
> >> properties? This patch is not about it all and dtschema did not change.
> >
> > There must have been a misunderstanding indeed, I interpreted "New
> > dtschema changed it" as meaning there were now new rules. Is that
> > incorrect ?
>
> For the binding with a property defined only in top-level properties: no
> changes, no new rules.
>
> For the binding with top-level and if:then:else: dtschema since few
> months changed interpretation.
OK, that's what I didn't understand correctly.
> > If you don't mind clarifying, what is the current recommendation to
> > indicate that a property has a fixed number of items ? Which of the
> > following three options is preferred ?
>
> Answer below assumes we have clocks defined in top-level properties and
> there is no if:then:else customizing it.
>
> > properties:
> > clocks:
> > minItems: 2
>
> That's wrong, because items are unconstrained.
>
> > properties:
> > clocks:
> > maxItems: 2
>
> This one is preferred.
>
> > properties:
> > clocks:
> > minItems: 2
> > maxItems: 2
>
> This one is correct, but less preferred.
Thank you, that is clear now.
--
Regards,
Laurent Pinchart
Powered by blists - more mailing lists