Re: [PATCH v2 01/21] dt-bindings: gpu: img: More explicit compatible strings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Nov 18, 2024 at 01:01:53PM +0000, Matt Coster wrote:
> The current compatible strings are not specific enough to constrain the

No, they are specific enough.

> hardware in devicetree. For example, the current "img,img-axe" string
> refers to the entire family of Series AXE GPUs. The more specific
> "img,img-axe-1-16m" string refers to the AXE-1-16M GPU which, unlike the
> rest of its family, only uses a single power domain.
> 
> While in this instance there is already "ti,am62-gpu" for the more

That's the specific compatible.

> specific case, the intent here is to draw a line between properties
> inherent to the IP core and choices made by the silicon vendor at
> integration time. For example, the number of power domains is a property
> of the IP core, whereas the decision to use one or three clocks (see
> next patch) is a vendor one.
> 
> Work is currently underway to add support for volcanic-based Imagination
> GPUs, for which bindings will be added in "img,powervr-volcanic.yaml".
> The split between rogue and volcanic cores is non-obvious at times, so
> add a generic top-level "img,img-rogue" compatible string here to allow
> for simpler differentiation in devicetrees without referring back to the
> bindings.
> 
> Make these changes now before introducing more compatible strings to keep
> the legacy versions to a minimum.
> 
> Signed-off-by: Matt Coster <matt.coster@xxxxxxxxxx>
> ---
> Changes in v2:
> - Clarified justification for compatible strings
> - Link to v1: https://lore.kernel.org/r/20241105-sets-bxs-4-64-patch-v1-v1-1-4ed30e865892@xxxxxxxxxx
> ---
>  .../devicetree/bindings/gpu/img,powervr-rogue.yaml    | 19 ++++++++++++++-----
>  1 file changed, 14 insertions(+), 5 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml b/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml
> index 256e252f8087fa0d6081f771a01601d34b66fe19..ef7070daf213277d0190fe319e202fdc597337d4 100644
> --- a/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml
> +++ b/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml
> @@ -12,10 +12,19 @@ maintainers:
>  
>  properties:
>    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-1-16m
> +          - const: img,img-rogue

NAK, that's ABI break. You are stuck with whatever you sent earlier.


> +
> +      # This legacy combination of compatible strings was introduced early on before the more
> +      # specific GPU identifiers were used. Keep it around here for compatibility, but never use
> +      # "img,img-axe" in new devicetrees.

Wrap according to Linux coding style. But anyway this is not needed,
just deprecate things.

> +      - items:
> +          - const: ti,am62-gpu
> +          - const: img,img-axe

So you want to use deprecated here?

Anyway, entire change is not needed and without proper justification.
Your marketing terms are not proper justification.

Best regards,
Krzysztof





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux