[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <74dca3fa90d5cd78286281e2ced45842bee21f91.camel@mediatek.com>
Date: Tue, 21 Mar 2023 05:33:50 +0000
From: Nancy Lin (林欣螢) <Nancy.Lin@...iatek.com>
To: "p.zabel@...gutronix.de" <p.zabel@...gutronix.de>,
"matthias.bgg@...il.com" <matthias.bgg@...il.com>,
"krzysztof.kozlowski@...aro.org" <krzysztof.kozlowski@...aro.org>,
"angelogioacchino.delregno@...labora.com"
<angelogioacchino.delregno@...labora.com>,
"chunkuang.hu@...nel.org" <chunkuang.hu@...nel.org>,
"robh+dt@...nel.org" <robh+dt@...nel.org>,
"krzysztof.kozlowski+dt@...aro.org"
<krzysztof.kozlowski+dt@...aro.org>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-mediatek@...ts.infradead.org"
<linux-mediatek@...ts.infradead.org>,
Singo Chang (張興國)
<Singo.Chang@...iatek.com>,
"nathan@...nel.org" <nathan@...nel.org>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"daniel@...ll.ch" <daniel@...ll.ch>,
CK Hu (胡俊光) <ck.hu@...iatek.com>,
"dri-devel@...ts.freedesktop.org" <dri-devel@...ts.freedesktop.org>,
Project_Global_Chrome_Upstream_Group
<Project_Global_Chrome_Upstream_Group@...iatek.com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"clang-built-linux@...glegroups.com"
<clang-built-linux@...glegroups.com>,
"ndesaulniers@...gle.com" <ndesaulniers@...gle.com>
Subject: Re: [PATCH v29 1/7] dt-bindings: mediatek: add ethdr definition for
mt8195
Dear Angelo,
Sorry for late reply.
On Fri, 2023-03-17 at 10:58 +0100, AngeloGioacchino Del Regno wrote:
> Il 17/03/23 10:52, Nancy Lin (林欣螢) ha scritto:
> > On Fri, 2023-03-17 at 10:37 +0100, AngeloGioacchino Del Regno
> > wrote:
> > > Il 17/03/23 10:03, Krzysztof Kozlowski ha scritto:
> > > > On 17/03/2023 08:55, Nancy Lin (林欣螢) wrote:
> > > > > On Thu, 2023-03-16 at 12:36 +0100, Krzysztof Kozlowski wrote:
> > > > > > On 16/03/2023 10:53, AngeloGioacchino Del Regno wrote:
> > > > > >
> > > > > > > Hello Krzysztof, Nancy,
> > > > > > >
> > > > > > > Since this series has reached v29, can we please reach an
> > > > > > > agreement
> > > > > > > on the bindings
> > > > > > > to use here, so that we can get this finally upstreamed?
> > > > > > >
> > > > > > > I will put some examples to try to get this issue
> > > > > > > resolved.
> > > > > > >
> > > > > > > ### Example 1: Constrain the number of GCE entries to
> > > > > > > *seven*
> > > > > > > array
> > > > > > > elements (7x4!)
> > > > > > >
> > > > > > > mediatek,gce-client-reg:
> > > > > > > $ref: /schemas/types.yaml#/definitions/phandle-
> > > > > > > array
> > > > > > > maxItems: 1
> > > > > > > description: The register of display function
> > > > > > > block to
> > > > > > > be set
> > > > > > > by gce.
> > > > > > > There are 4 arguments in this property, gce
> > > > > > > node,
> > > > > > > subsys id,
> > > > > > > offset and
> > > > > > > register size. The subsys id is defined in the
> > > > > > > gce
> > > > > > > header of
> > > > > > > each chips
> > > > > > > include/dt-bindings/gce/<chip>-gce.h, mapping to
> > > > > > > the
> > > > > > > register of display
> > > > > > > function block.
> > > > > > > items:
> > > > > > > minItems: 28
> > > > > > > maxItems: 28
> > > > > > > items: <----- this block
> > > > > > > doesn't
> > > > > > > seem to
> > > > > > > get checked :\
> > > > > > > - description: phandle of GCE
> > > > > > > - description: GCE subsys id
> > > > > > > - description: register offset
> > > > > > > - description: register size
> > > > > >
> > > > > > This is what we would like to have but it requires
> > > > > > exception in
> > > > > > dtschema. Thus:
> > > > > >
> > > > > > >
> > > > > > >
> > > > > > > ### Example 2: Don't care about constraining the number
> > > > > > > of
> > > > > > > arguments
> > > > > > >
> > > > > > > mediatek,gce-client-reg:
> > > > > > > $ref: /schemas/types.yaml#/definitions/phandle-
> > > > > > > array
> > > > > > > maxItems: 1
> > > > > > > description: The register of display function
> > > > > > > block to
> > > > > > > be set
> > > > > > > by gce.
> > > > > > > There are 4 arguments in this property, gce
> > > > > > > node,
> > > > > > > subsys id,
> > > > > > > offset and
> > > > > > > register size. The subsys id is defined in the
> > > > > > > gce
> > > > > > > header of
> > > > > > > each chips
> > > > > > > include/dt-bindings/gce/<chip>-gce.h, mapping to
> > > > > > > the
> > > > > > > register of display
> > > > > > > function block.
> > > > > >
> > > > > > use this.
> > > > > >
> > > > > > Best regards,
> > > > > > Krzysztof
> > > > >
> > > > >
> > > > > Hi Krzysztof, Angelo,
> > > > >
> > > > > Thanks for the comment.
> > > > > The Example 2 can pass dt_binding_check.
> > > > >
> > > > > But the example in the binding has 7 items [1] and dts [2].
> > > > > Does
> > > > > the
> > > > > "maxItems: 1" affect any other schema or dts check?
> > > >
> > > > Ah, then it should be maxItems: 7, not 1.
> > > >
> > >
> > > Keep in mind for your v30:
> > >
> > > maxItems: 7 will pass - but only if minItems is *not* 7 :-)
> > >
> > > -> (so, do not declare minItems, as default is 1) <-
> > >
> > > Regards,
> > > Angelo
> > >
> >
> > Hi Angelo,
> >
> > I still have one message [1] when runing dt_binding_check for
> > "example
> > 2 + maxItems: 7" [2].
> >
> > [1]
> > /proj/mtk19347/cros/src/third_party/kernel/v5.10/Documentation/devi
> > cetr
> > ee/bindings/display/mediatek/mediatek,ethdr.example.dtb:
> > hdr-engine@...14000: mediatek,gce-client-reg: [[4294967295, 7,
> > 16384,
> > 4096, 4294967295, 7, 20480, 4096, 4294967295, 7, 28672, 4096,
> > 4294967295, 7, 36864, 4096, 4294967295, 7, 40960, 4096, 4294967295,
> > 7,
> > 45056, 4096, 4294967295, 7, 49152, 4096]] is too short
> >
> >
> > [2]
> > mediatek,gce-client-reg:
> > $ref: /schemas/types.yaml#/definitions/phandle-array
> > maxItems: 7
> > description: The register of display function block to be set
> > by
> > gce.
> > There are 4 arguments in this property, gce node, subsys
> > id,
> > offset and
> > register size. The subsys id is defined in the gce header
> > of
> > each chips
> > include/dt-bindings/gce/<chip>-gce.h, mapping to the
> > register of
> > display
> > function block.
> >
>
> Maybe I'm wrong about the "do not declare minItems"... try with
>
> minItems: 1
> maxItems: 7
>
>
> ...does it work now?
>
Yes, It works well with "example2 + minItems:1 + maxItems: 7" [1]
[1]
mediatek,gce-client-reg:
$ref: /schemas/types.yaml#/definitions/phandle-array
minItems: 1
maxItems: 7
description: The register of display function block to be set by
gce.
There are 4 arguments in this property, gce node, subsys id,
offset and
register size. The subsys id is defined in the gce header of each
chips
include/dt-bindings/gce/<chip>-gce.h, mapping to the register of
display
function block.
Regards,
Nancy
> > Regards,
> > Nancy
> >
> >
> > > > Best regards,
> > > > Krzysztof
> > > >
>
>
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@...ts.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Powered by blists - more mailing lists