On 30/08/2024 03:43, Ryan Walklin wrote:


On 28 Aug 2024, at 7:07 PM, Maxime Ripard <[email protected]> wrote:

On Tue, Aug 27, 2024 at 06:28:21PM GMT, Neil Armstrong wrote:
Thanks both for the further feedback, agreed logical to use the
device vendor and panel serial number, ie "anbernic,wl-355608-a8".
Will post a V2 with a comment to that effect.

Well in this case we can keep "wl-355608-a8", because the panel vendor
_is not_ anbernic.

And it's not a generic or ubiquitous device either. We've been over
this already, anbernic is the best we have.

I don’t have a strong preference either way but agree the anbernic vendor 
string is the best compromise.

The only valid compatible with anbernic would be to use the exact device in use 
and not a wildcard,
so you said the 3 devices using this panel are:
 anbernic,rg35xx-2024
 anbernic,rg35xx-plus
 anbernic,rg35xx-h
you should introduce 3 compatibles:
 anbernic,rg35xx-2024-panel
 anbernic,rg35xx-plus-panel
 anbernic,rg35xx-h-panel

but it's duplicating for nothing, to you should use fallbacks for 2 of them to 
have in DT :

 anbernic,rg35xx-2024-panel
 anbernic,rg35xx-plus-panel, anbernic,rg35xx-2024-panel
 anbernic,rg35xx-h-panel, anbernic,rg35xx-2024-panel

and only use anbernic,rg35xx-2024-panel in the driver.

In this case bindings should be like:
  properties:
    compatible:
      oneOf:
        - const: anbernic,rg35xx-2024-panel
        - items:
            - enum:
                - anbernic,rg35xx-plus-panel
                - anbernic,rg35xx-h-panel
            - const: anbernic,rg35xx-2024-panel

(of course I selected rg35xx-2024 as the primary one, it could be another, 
usually the older one)

Neil


Regards,

Ryan

Reply via email to