Re: [PATCH v11 1/4] dt-bindings: gpu: mali-bifrost: Add Mediatek MT8183

From: Rob Herring
Date: Tue Apr 20 2021 - 09:01:32 EST


On Mon, Jan 25, 2021 at 7:18 PM Nicolas Boichat <drinkcat@xxxxxxxxxxxx> wrote:
>
> Define a compatible string for the Mali Bifrost GPU found in
> Mediatek's MT8183 SoCs.
>
> Signed-off-by: Nicolas Boichat <drinkcat@xxxxxxxxxxxx>
> ---
>
> Changes in v11:
> - binding: power-domain-names not power-domainS-names
>
> Changes in v10:
> - Fix the binding to make sure sram-supply property can be provided.
>
> Changes in v9: None
> Changes in v8: None
> Changes in v7: None
> Changes in v6:
> - Rebased, actually tested with recent mesa driver.
>
> Changes in v5:
> - Rename "2d" power domain to "core2"
>
> Changes in v4:
> - Add power-domain-names description
> (kept Alyssa's reviewed-by as the change is minor)
>
> Changes in v3: None
> Changes in v2: None
>
> .../bindings/gpu/arm,mali-bifrost.yaml | 28 +++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/gpu/arm,mali-bifrost.yaml b/Documentation/devicetree/bindings/gpu/arm,mali-bifrost.yaml
> index 184492162e7e..3e758f88e2cd 100644
> --- a/Documentation/devicetree/bindings/gpu/arm,mali-bifrost.yaml
> +++ b/Documentation/devicetree/bindings/gpu/arm,mali-bifrost.yaml
> @@ -17,6 +17,7 @@ properties:
> items:
> - enum:
> - amlogic,meson-g12a-mali
> + - mediatek,mt8183-mali
> - realtek,rtd1619-mali
> - rockchip,px30-mali
> - const: arm,mali-bifrost # Mali Bifrost GPU model/revision is fully discoverable
> @@ -41,6 +42,8 @@ properties:
>
> mali-supply: true
>
> + sram-supply: true
> +
> operating-points-v2: true
>
> power-domains:
> @@ -87,6 +90,31 @@ allOf:
> then:
> required:
> - resets
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: mediatek,mt8183-mali
> + then:
> + properties:
> + power-domains:
> + description:
> + List of phandle and PM domain specifier as documented in
> + Documentation/devicetree/bindings/power/power_domain.txt
> + minItems: 3
> + maxItems: 3

This won't work because the top level schema restricts this to 1. The
top level needs to say:

power-domains:
minItems: 1
maxItems: 3

And you need just 'minItems: 3' here and 'maxItems: 1' in the else clause.

And drop the description. That's every 'power-domains' property.

> + power-domain-names:
> + items:
> + - const: core0
> + - const: core1
> + - const: core2

Blank line

> + required:
> + - sram-supply
> + - power-domains
> + - power-domain-names
> + else:
> + properties:
> + sram-supply: false
>
> examples:
> - |
> --
> 2.30.0.280.ga3ce27912f-goog
>