Re: [PATCH] dt-bindings: Improve phandle-array schemas

From: Rob Herring
Date: Wed Jan 19 2022 - 10:31:10 EST


On Wed, Jan 19, 2022 at 9:22 AM Arnaud POULIQUEN
<arnaud.pouliquen@xxxxxxxxxxx> wrote:
>
> Hello Rob,
>
> On 1/19/22 2:50 AM, Rob Herring wrote:
> > The 'phandle-array' type is a bit ambiguous. It can be either just an
> > array of phandles or an array of phandles plus args. Many schemas for
> > phandle-array properties aren't clear in the schema which case applies
> > though the description usually describes it.
> >
> > The array of phandles case boils down to needing:
> >
> > items:
> > maxItems: 1
> >
> > The phandle plus args cases should typically take this form:
> >
> > items:
> > - items:
> > - description: A phandle
> > - description: 1st arg cell
> > - description: 2nd arg cell
> >
> > With this change, some examples need updating so that the bracketing of
> > property values matches the schema.
> >
> > Cc: Damien Le Moal <damien.lemoal@xxxxxxxxxxxxxxxxxx>
> > Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
> > Cc: "David S. Miller" <davem@xxxxxxxxxxxxx>
> > Cc: Chun-Kuang Hu <chunkuang.hu@xxxxxxxxxx>
> > Cc: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
> > Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> > Cc: Kieran Bingham <kieran.bingham+renesas@xxxxxxxxxxxxxxxx>
> > Cc: Vinod Koul <vkoul@xxxxxxxxxx>
> > Cc: Georgi Djakov <djakov@xxxxxxxxxx>
> > Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> > Cc: Marc Zyngier <maz@xxxxxxxxxx>
> > Cc: Joerg Roedel <joro@xxxxxxxxxx>
> > Cc: Lee Jones <lee.jones@xxxxxxxxxx>
> > Cc: Daniel Thompson <daniel.thompson@xxxxxxxxxx>
> > Cc: Jingoo Han <jingoohan1@xxxxxxxxx>
> > Cc: Pavel Machek <pavel@xxxxxx>
> > Cc: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx>
> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx>
> > Cc: Jakub Kicinski <kuba@xxxxxxxxxx>
> > Cc: Wolfgang Grandegger <wg@xxxxxxxxxxxxxx>
> > Cc: Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx>
> > Cc: Andrew Lunn <andrew@xxxxxxx>
> > Cc: Vivien Didelot <vivien.didelot@xxxxxxxxx>
> > Cc: Florian Fainelli <f.fainelli@xxxxxxxxx>
> > Cc: Vladimir Oltean <olteanv@xxxxxxxxx>
> > Cc: Kalle Valo <kvalo@xxxxxxxxxx>
> > Cc: Viresh Kumar <vireshk@xxxxxxxxxx>
> > Cc: Stephen Boyd <sboyd@xxxxxxxxxx>
> > Cc: Kishon Vijay Abraham I <kishon@xxxxxx>
> > Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
> > Cc: "Rafael J. Wysocki" <rafael@xxxxxxxxxx>
> > Cc: Kevin Hilman <khilman@xxxxxxxxxx>
> > Cc: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
> > Cc: Sebastian Reichel <sre@xxxxxxxxxx>
> > Cc: Mark Brown <broonie@xxxxxxxxxx>
> > Cc: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx>
> > Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
> > Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
> > Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> > Cc: Thierry Reding <thierry.reding@xxxxxxxxx>
> > Cc: Jonathan Hunter <jonathanh@xxxxxxxxxx>
> > Cc: Sudeep Holla <sudeep.holla@xxxxxxx>
> > Cc: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
> > Cc: linux-ide@xxxxxxxxxxxxxxx
> > Cc: linux-crypto@xxxxxxxxxxxxxxx
> > Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx
> > Cc: dmaengine@xxxxxxxxxxxxxxx
> > Cc: linux-pm@xxxxxxxxxxxxxxx
> > Cc: iommu@xxxxxxxxxxxxxxxxxxxxxxxxxx
> > Cc: linux-leds@xxxxxxxxxxxxxxx
> > Cc: linux-media@xxxxxxxxxxxxxxx
> > Cc: netdev@xxxxxxxxxxxxxxx
> > Cc: linux-can@xxxxxxxxxxxxxxx
> > Cc: linux-wireless@xxxxxxxxxxxxxxx
> > Cc: linux-phy@xxxxxxxxxxxxxxxxxxx
> > Cc: linux-gpio@xxxxxxxxxxxxxxx
> > Cc: linux-riscv@xxxxxxxxxxxxxxxxxxx
> > Cc: linux-remoteproc@xxxxxxxxxxxxxxx
> > Cc: alsa-devel@xxxxxxxxxxxxxxxx
> > Cc: linux-usb@xxxxxxxxxxxxxxx
> > Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
> > ---
>
> [...]
>
> > .../bindings/remoteproc/st,stm32-rproc.yaml | 33 ++++++--
>
> [...]
>
> > diff --git a/Documentation/devicetree/bindings/remoteproc/st,stm32-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/st,stm32-rproc.yaml
> > index b587c97c282b..be3d9b0e876b 100644
> > --- a/Documentation/devicetree/bindings/remoteproc/st,stm32-rproc.yaml
> > +++ b/Documentation/devicetree/bindings/remoteproc/st,stm32-rproc.yaml
> > @@ -29,17 +29,22 @@ properties:
> >
> > st,syscfg-holdboot:
> > description: remote processor reset hold boot
> > - - Phandle of syscon block.
> > - - The offset of the hold boot setting register.
> > - - The field mask of the hold boot.
> > $ref: "/schemas/types.yaml#/definitions/phandle-array"
> > - maxItems: 1
> > + items:
> > + - items:
> > + - description: Phandle of syscon block
> > + - description: The offset of the hold boot setting register
> > + - description: The field mask of the hold boot
> >
> > st,syscfg-tz:
> > description:
> > Reference to the system configuration which holds the RCC trust zone mode
> > $ref: "/schemas/types.yaml#/definitions/phandle-array"
> > - maxItems: 1
> > + items:
> > + - items:
> > + - description: Phandle of syscon block
> > + - description: FIXME
> > + - description: FIXME
>
> - description: The offset of the trust zone setting register
> - description: The field mask of the trust zone state
>
> >
> > interrupts:
> > description: Should contain the WWDG1 watchdog reset interrupt
> > @@ -93,20 +98,32 @@ properties:
> > $ref: "/schemas/types.yaml#/definitions/phandle-array"
> > description: |
> > Reference to the system configuration which holds the remote
> > - maxItems: 1
> > + items:
> > + - items:
> > + - description: Phandle of syscon block
> > + - description: FIXME
> > + - description: FIXME
>
> - description: The offset of the power setting register
> - description: The field mask of the PDDS selection
>
> >
> > st,syscfg-m4-state:
> > $ref: "/schemas/types.yaml#/definitions/phandle-array"
> > description: |
> > Reference to the tamp register which exposes the Cortex-M4 state.
> > - maxItems: 1
> > + items:
> > + - items:
> > + - description: Phandle of syscon block with the tamp register
> > + - description: FIXME
> > + - description: FIXME
>
> - description: The offset of the tamp register
> - description: The field mask of the Cortex-M4 state
>
> >
> > st,syscfg-rsc-tbl:
> > $ref: "/schemas/types.yaml#/definitions/phandle-array"
> > description: |
> > Reference to the tamp register which references the Cortex-M4
> > resource table address.
> > - maxItems: 1
> > + items:
> > + - items:
> > + - description: Phandle of syscon block with the tamp register
> > + - description: FIXME
> > + - description: FIXME
>
> - description: The offset of the tamp register
> - description: The field mask of the Cortex-M4 resource table address
>
> Please tell me if you prefer that I fix this in a dedicated patch.

Thanks! I'll fold this into this patch.

Rob