Commit b8a83e60 authored by Serge Semin's avatar Serge Semin Committed by Lorenzo Pieralisi
Browse files

dt-bindings: imx6q-pcie: Fix clock names for imx6sx and imx8mq

Originally as it was defined the legacy bindings the pcie_inbound_axi and
pcie_aux clock names were supposed to be used in the fsl,imx6sx-pcie and
fsl,imx8mq-pcie devices respectively. But the bindings conversion has been
incorrectly so now the fourth clock name is defined as "pcie_inbound_axi
for imx6sx-pcie, pcie_aux for imx8mq-pcie", which is completely wrong.
Let's fix that by conditionally apply the clock-names constraints based on
the compatible string content.

Link: https://lore.kernel.org/r/20221113191301.5526-2-Sergey.Semin@baikalelectronics.ru


Fixes: 751ca492 ("dt-bindings: PCI: imx6: convert the imx pcie controller to dtschema")
Signed-off-by: default avatarSerge Semin <Sergey.Semin@baikalelectronics.ru>
Signed-off-by: default avatarLorenzo Pieralisi <lpieralisi@kernel.org>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Acked-by: default avatarAlexander Stein <alexander.stein@ew.tq-group.com>
parent 1d26a55f
Loading
Loading
Loading
Loading
+42 −4
Original line number Diff line number Diff line
@@ -14,9 +14,6 @@ description: |+
  This PCIe host controller is based on the Synopsys DesignWare PCIe IP
  and thus inherits all the common properties defined in snps,dw-pcie.yaml.

allOf:
  - $ref: /schemas/pci/snps,dw-pcie.yaml#

properties:
  compatible:
    enum:
@@ -61,7 +58,7 @@ properties:
      - const: pcie
      - const: pcie_bus
      - const: pcie_phy
      - const: pcie_inbound_axi for imx6sx-pcie, pcie_aux for imx8mq-pcie
      - enum: [ pcie_inbound_axi, pcie_aux ]

  num-lanes:
    const: 1
@@ -175,6 +172,47 @@ required:
  - clocks
  - clock-names

allOf:
  - $ref: /schemas/pci/snps,dw-pcie.yaml#
  - if:
      properties:
        compatible:
          contains:
            const: fsl,imx6sx-pcie
    then:
      properties:
        clock-names:
          items:
            - {}
            - {}
            - {}
            - const: pcie_inbound_axi
  - if:
      properties:
        compatible:
          contains:
            const: fsl,imx8mq-pcie
    then:
      properties:
        clock-names:
          items:
            - {}
            - {}
            - {}
            - const: pcie_aux
  - if:
      properties:
        compatible:
          not:
            contains:
              enum:
                - fsl,imx6sx-pcie
                - fsl,imx8mq-pcie
    then:
      properties:
        clock-names:
          maxItems: 3

unevaluatedProperties: false

examples: