diff mbox series

[v2,02/12] dt-bindings: PCI: qcom: Document sc8180x properties

Message ID 20230325122444.249507-3-vkoul@kernel.org (mailing list archive)
State Superseded
Headers show
Series Introduce the SC8180x devices | expand

Commit Message

Vinod Koul March 25, 2023, 12:24 p.m. UTC
sc8180x PCIe clocks and resets are different from the common pcie
binding, this warrants the oneOf clause for the clocks and resets

Signed-off-by: Vinod Koul <vkoul@kernel.org>
---
 .../devicetree/bindings/pci/qcom,pcie.yaml    | 49 ++++++++++++++++++-
 1 file changed, 47 insertions(+), 2 deletions(-)

Comments

Krzysztof Kozlowski March 27, 2023, 7:52 a.m. UTC | #1
On 25/03/2023 13:24, Vinod Koul wrote:
> sc8180x PCIe clocks and resets are different from the common pcie

There is no "common" part for sc8180x in this binding. sc8180x is
customized.

> binding, this warrants the oneOf clause for the clocks and resets

Your subject and commit suggests you are now adding new customization
for SC8180x, but it is already there! Clocks, interrupts, regs etc.
Therefore the commit msg does not fit the contents of the patch. Instead
say that you fix something or change, because of foo and bar.

Otherwise it looks like some old patch rebased onto new kernel so it
does not match at all.

> 
> Signed-off-by: Vinod Koul <vkoul@kernel.org>
> ---
>  .../devicetree/bindings/pci/qcom,pcie.yaml    | 49 ++++++++++++++++++-
>  1 file changed, 47 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
> index fb32c43dd12d..d4f837924e7c 100644
> --- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
> +++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
> @@ -459,6 +459,33 @@ allOf:
>            items:
>              - const: pci # PCIe core reset
>  
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - qcom,pcie-sc8180x
> +    then:
> +      properties:
> +        clocks:
> +          minItems: 8
> +          maxItems: 8
> +        clock-names:
> +          items:
> +            - const: pipe # PIPE clock
> +            - const: aux # Auxiliary clock
> +            - const: cfg # Configuration clock
> +            - const: bus_master # Master AXI clock
> +            - const: bus_slave # Slave AXI clock
> +            - const: slave_q2a # Slave Q2A clock
> +            - const: ref # REFERENCE clock
> +            - const: tbu # PCIe TBU clock
> +        resets:
> +          maxItems: 1
> +        reset-names:
> +          items:
> +            - const: pci # PCIe core reset
> +
>    - if:
>        properties:
>          compatible:
> @@ -507,7 +534,6 @@ allOf:
>          compatible:
>            contains:
>              enum:
> -              - qcom,pcie-sc8180x
>                - qcom,pcie-sm8150
>                - qcom,pcie-sm8250
>      then:
> @@ -675,6 +701,7 @@ allOf:
>            contains:
>              enum:
>                - qcom,pcie-sa8540p
> +              - qcom,pcie-sc8180x
>                - qcom,pcie-sc8280xp
>      then:
>        required:
> @@ -717,7 +744,6 @@ allOf:
>              enum:
>                - qcom,pcie-msm8996
>                - qcom,pcie-sc7280
> -              - qcom,pcie-sc8180x
>                - qcom,pcie-sdm845
>                - qcom,pcie-sm8150
>                - qcom,pcie-sm8250
> @@ -746,6 +772,25 @@ allOf:
>                  - const: msi6
>                  - const: msi7
>  
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - qcom,pcie-sc8180x
> +    then:
> +      oneOf:

It's not oneOf.
> +        - properties:
> +            interrupts:
> +              maxItems: 1
> +            interrupt-names:
> +              items:
> +                - const: msi

Why do you even need this here? It's already there.

> +            iommus:
> +              maxItems: 1
> +            iommu-map:
> +              maxItems: 2

And this looks wrong. Drop.
https://lore.kernel.org/all/20230308082424.140224-3-manivannan.sadhasivam@linaro.org/

> +
>    - if:
>        properties:
>          compatible:

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
index fb32c43dd12d..d4f837924e7c 100644
--- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
+++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
@@ -459,6 +459,33 @@  allOf:
           items:
             - const: pci # PCIe core reset
 
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - qcom,pcie-sc8180x
+    then:
+      properties:
+        clocks:
+          minItems: 8
+          maxItems: 8
+        clock-names:
+          items:
+            - const: pipe # PIPE clock
+            - const: aux # Auxiliary clock
+            - const: cfg # Configuration clock
+            - const: bus_master # Master AXI clock
+            - const: bus_slave # Slave AXI clock
+            - const: slave_q2a # Slave Q2A clock
+            - const: ref # REFERENCE clock
+            - const: tbu # PCIe TBU clock
+        resets:
+          maxItems: 1
+        reset-names:
+          items:
+            - const: pci # PCIe core reset
+
   - if:
       properties:
         compatible:
@@ -507,7 +534,6 @@  allOf:
         compatible:
           contains:
             enum:
-              - qcom,pcie-sc8180x
               - qcom,pcie-sm8150
               - qcom,pcie-sm8250
     then:
@@ -675,6 +701,7 @@  allOf:
           contains:
             enum:
               - qcom,pcie-sa8540p
+              - qcom,pcie-sc8180x
               - qcom,pcie-sc8280xp
     then:
       required:
@@ -717,7 +744,6 @@  allOf:
             enum:
               - qcom,pcie-msm8996
               - qcom,pcie-sc7280
-              - qcom,pcie-sc8180x
               - qcom,pcie-sdm845
               - qcom,pcie-sm8150
               - qcom,pcie-sm8250
@@ -746,6 +772,25 @@  allOf:
                 - const: msi6
                 - const: msi7
 
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - qcom,pcie-sc8180x
+    then:
+      oneOf:
+        - properties:
+            interrupts:
+              maxItems: 1
+            interrupt-names:
+              items:
+                - const: msi
+            iommus:
+              maxItems: 1
+            iommu-map:
+              maxItems: 2
+
   - if:
       properties:
         compatible: