Aw: Re: Re: Re: [PATCH v3 1/3] dt-bindings: Convert ahci-platform DT bindings to yaml

Frank Wunderlich frank-w at public-files.de
Mon Feb 28 09:01:58 PST 2022


Hi

> Gesendet: Montag, 28. Februar 2022 um 15:35 Uhr
> Von: "Krzysztof Kozlowski" <krzysztof.kozlowski at canonical.com>
> >> Gesendet: Montag, 28. Februar 2022 um 13:38 Uhr
> >> Von: "Krzysztof Kozlowski" <krzysztof.kozlowski at canonical.com>

> >> No, this has to be oneOf. See for example
> >> Documentation/devicetree/bindings/gpio/gpio-vf610.yaml or many other files.

> > compatible:
> >   oneOf:
> >     - enum:
> >       - brcm,iproc-ahci
> >       - cavium,octeon-7130-ahci
> >       - hisilicon,hisi-ahci
> >       - ibm,476gtr-ahci
> >       - marvell,armada-3700-ahci
> >       - marvell,armada-380-ahci
> >       - snps,dwc-ahci
> >       - snps,spear-ahci
> >     - items:
> >       - const: generic-ahci
> >       - enum:
> >         - brcm,iproc-ahci
> >         - cavium,octeon-7130-ahci
> >         - hisilicon,hisi-ahci
> >         - ibm,476gtr-ahci
> >         - marvell,armada-3700-ahci
> >         - marvell,armada-380-ahci
> >         - snps,dwc-ahci
> >         - snps,spear-ahci
>
> That could be one way, but instead I propose to have only second part
> (so enum + generic-ahci) for all compatibles mentioned in
> ahci_platform.c, which do not customize the driver behavior for these
> compatibles..

tried many ways of defining it, but none passes with the examples. either to short (first example) or too long (second)

as far as i understand the logic it should be similar to this:

properties:
  compatible:
    oneOf:
      - items:
        - enum:
          - marvell,berlin2q-achi
        - const: generic-ahci
      - items:
        - enum:
          - brcm,iproc-ahci
          - cavium,octeon-7130-ahci
          - hisilicon,hisi-ahci
          - ibm,476gtr-ahci
          - marvell,armada-3700-ahci
          - marvell,armada-380-ahci
          - snps,dwc-ahci
          - snps,spear-ahci

this passes the dt-binding_check (examples) for me, but i guess there are many more compatibles defined with the generic.

dtbs_check found some more like

'brcm,iproc-ahci'
'marvell,armada-8k-ahci'
and many more

it looks like these are also checked in the enum, so the yaml itself look correct, but needs some kind of wildcard instead of the "marvell,berlin2q-achi" as second for the generic-ahci compatible

regards Frank



More information about the linux-arm-kernel mailing list