Re: [PATCH RFC 01/10] dt-bindings: gpu: Add PowerVR Series5 SGX GPUs

From: Krzysztof Kozlowski
Date: Tue Dec 05 2023 - 02:10:21 EST


On 04/12/2023 19:22, Andrew Davis wrote:
> The Imagination PowerVR Series5 "SGX" GPU is part of several SoCs from
> multiple vendors. Describe how the SGX GPU is integrated in these SoC,
> including register space and interrupts. Clocks, reset, and power domain
> information is SoC specific.
>
> Signed-off-by: Andrew Davis <afd@xxxxxx>
> ---
> .../devicetree/bindings/gpu/img,powervr.yaml | 69 +++++++++++++++++--
> 1 file changed, 63 insertions(+), 6 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/gpu/img,powervr.yaml b/Documentation/devicetree/bindings/gpu/img,powervr.yaml
> index a13298f1a1827..9f036891dad0b 100644
> --- a/Documentation/devicetree/bindings/gpu/img,powervr.yaml
> +++ b/Documentation/devicetree/bindings/gpu/img,powervr.yaml
> @@ -11,11 +11,33 @@ maintainers:
> - Frank Binns <frank.binns@xxxxxxxxxx>
>
> properties:
> + $nodename:
> + pattern: '^gpu@[a-f0-9]+$'

Why? We do not enforce it in other bindings.

> +
> compatible:
> - items:
> - - enum:
> - - ti,am62-gpu
> - - const: img,img-axe # IMG AXE GPU model/revision is fully discoverable
> + oneOf:
> + - items:
> + - enum:
> + - ti,am62-gpu
> + - const: img,img-axe # IMG AXE GPU model/revision is fully discoverable
> + - items:
> + - enum:
> + - ti,omap3430-gpu # Rev 121
> + - ti,omap3630-gpu # Rev 125
> + - const: img,powervr-sgx530
> + - items:
> + - enum:
> + - ingenic,jz4780-gpu # Rev 130
> + - ti,omap4430-gpu # Rev 120
> + - const: img,powervr-sgx540
> + - items:
> + - enum:
> + - allwinner,sun6i-a31-gpu # MP2 Rev 115
> + - ti,omap4470-gpu # MP1 Rev 112
> + - ti,omap5432-gpu # MP2 Rev 105
> + - ti,am5728-gpu # MP2 Rev 116
> + - ti,am6548-gpu # MP1 Rev 117
> + - const: img,powervr-sgx544
>
> reg:
> maxItems: 1
> @@ -40,8 +62,6 @@ properties:
> required:
> - compatible
> - reg
> - - clocks
> - - clock-names

I don't think so... How can you run without clocks?

> - interrupts
>
> additionalProperties: false
> @@ -56,6 +76,43 @@ allOf:
> properties:
> clocks:
> maxItems: 1
> + required:
> + - clocks
> + - clock-names

You need to define the clocks for your variants or disallow them. The
original code should be fixed as well and make the clocks fixed for all
img-axe cases.



Best regards,
Krzysztof