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

From: Arnaud POULIQUEN
Date: Wed Jan 19 2022 - 10:22:05 EST


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