Message ID | 20231112184557.3801-2-krzysztof.kozlowski@linaro.org |
---|---|
State | New |
Headers | show |
Series | [1/2] dt-bindings: PCI: qcom: adjust iommu-map for different SoC | expand |
On Sun, 12 Nov 2023 at 20:46, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote: > > PCI node in Qualcomm SC8180x DTS has 8 clocks, while one on SM8150 has 7 > clocks: > > sc8180x-primus.dtb: pci@1c00000: 'oneOf' conditional failed, one must be fixed: > ['pipe', 'aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'ref', 'tbu'] is too short > > sm8150-hdk.dtb: pci@1c00000: 'oneOf' conditional failed, one must be fixed: > ['pipe', 'aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'ref', 'tbu'] is too short > > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > --- > .../devicetree/bindings/pci/qcom,pcie.yaml | 58 ++++++++++++++++++- > 1 file changed, 57 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml > index 14d25e8a18e4..4c993ea97d7c 100644 > --- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml > +++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml > @@ -479,6 +479,35 @@ allOf: > items: > - const: pci # PCIe core reset > > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,pcie-sc8180x > + then: > + oneOf: > + - 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 > + properties: > + resets: > + maxItems: 1 > + reset-names: > + items: > + - const: pci # PCIe core reset > + > - if: > properties: > compatible: > @@ -527,8 +556,35 @@ allOf: > compatible: > contains: > enum: > - - qcom,pcie-sc8180x > - qcom,pcie-sm8150 > + then: > + oneOf: > + - properties: > + clocks: > + minItems: 7 > + maxItems: 7 > + 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 Which actually brings up a question, there is the corresponding clkref gcc clock. Mani, do you know if we should use it on sm8150? > + - const: tbu # PCIe TBU clock > + properties: > + resets: > + maxItems: 1 > + reset-names: > + items: > + - const: pci # PCIe core reset > + > + > + - if: > + properties: > + compatible: > + contains: > + enum: > - qcom,pcie-sm8250 > then: > oneOf: > -- > 2.34.1 > >
On Sun, Nov 12, 2023 at 07:45:57PM +0100, Krzysztof Kozlowski wrote: > PCI node in Qualcomm SC8180x DTS has 8 clocks, while one on SM8150 has 7 > clocks: > > sc8180x-primus.dtb: pci@1c00000: 'oneOf' conditional failed, one must be fixed: > ['pipe', 'aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'ref', 'tbu'] is too short > > sm8150-hdk.dtb: pci@1c00000: 'oneOf' conditional failed, one must be fixed: > ['pipe', 'aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'ref', 'tbu'] is too short This error says that SM8150 has 8 clocks defined in DT, but it has only 7. I'm confused. > > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Anyway, the patch looks good to me. Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> - Mani > --- > .../devicetree/bindings/pci/qcom,pcie.yaml | 58 ++++++++++++++++++- > 1 file changed, 57 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml > index 14d25e8a18e4..4c993ea97d7c 100644 > --- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml > +++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml > @@ -479,6 +479,35 @@ allOf: > items: > - const: pci # PCIe core reset > > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,pcie-sc8180x > + then: > + oneOf: > + - 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 > + properties: > + resets: > + maxItems: 1 > + reset-names: > + items: > + - const: pci # PCIe core reset > + > - if: > properties: > compatible: > @@ -527,8 +556,35 @@ allOf: > compatible: > contains: > enum: > - - qcom,pcie-sc8180x > - qcom,pcie-sm8150 > + then: > + oneOf: > + - properties: > + clocks: > + minItems: 7 > + maxItems: 7 > + 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: tbu # PCIe TBU clock > + properties: > + resets: > + maxItems: 1 > + reset-names: > + items: > + - const: pci # PCIe core reset > + > + > + - if: > + properties: > + compatible: > + contains: > + enum: > - qcom,pcie-sm8250 > then: > oneOf: > -- > 2.34.1 >
On 16/11/2023 07:05, Manivannan Sadhasivam wrote: > On Sun, Nov 12, 2023 at 07:45:57PM +0100, Krzysztof Kozlowski wrote: >> PCI node in Qualcomm SC8180x DTS has 8 clocks, while one on SM8150 has 7 >> clocks: >> >> sc8180x-primus.dtb: pci@1c00000: 'oneOf' conditional failed, one must be fixed: >> ['pipe', 'aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'ref', 'tbu'] is too short >> >> sm8150-hdk.dtb: pci@1c00000: 'oneOf' conditional failed, one must be fixed: >> ['pipe', 'aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'ref', 'tbu'] is too short > > This error says that SM8150 has 8 clocks defined in DT, but it has only 7. I'm > confused. I think I pasted wrong error. I'll fix in v2. > >> >> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > Anyway, the patch looks good to me. > > Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> > Thanks. Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml index 14d25e8a18e4..4c993ea97d7c 100644 --- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml +++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml @@ -479,6 +479,35 @@ allOf: items: - const: pci # PCIe core reset + - if: + properties: + compatible: + contains: + enum: + - qcom,pcie-sc8180x + then: + oneOf: + - 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 + properties: + resets: + maxItems: 1 + reset-names: + items: + - const: pci # PCIe core reset + - if: properties: compatible: @@ -527,8 +556,35 @@ allOf: compatible: contains: enum: - - qcom,pcie-sc8180x - qcom,pcie-sm8150 + then: + oneOf: + - properties: + clocks: + minItems: 7 + maxItems: 7 + 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: tbu # PCIe TBU clock + properties: + resets: + maxItems: 1 + reset-names: + items: + - const: pci # PCIe core reset + + + - if: + properties: + compatible: + contains: + enum: - qcom,pcie-sm8250 then: oneOf:
PCI node in Qualcomm SC8180x DTS has 8 clocks, while one on SM8150 has 7 clocks: sc8180x-primus.dtb: pci@1c00000: 'oneOf' conditional failed, one must be fixed: ['pipe', 'aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'ref', 'tbu'] is too short sm8150-hdk.dtb: pci@1c00000: 'oneOf' conditional failed, one must be fixed: ['pipe', 'aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'ref', 'tbu'] is too short Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> --- .../devicetree/bindings/pci/qcom,pcie.yaml | 58 ++++++++++++++++++- 1 file changed, 57 insertions(+), 1 deletion(-)