Message ID | 20231208105155.36097-2-krzysztof.kozlowski@linaro.org |
---|---|
State | Accepted |
Commit | f2ab5a2455d95e50ebbd835c92ddb2a632b2d301 |
Headers | show |
Series | None | expand |
On Fri, 08 Dec 2023 11:51:53 +0100, Krzysztof Kozlowski wrote: > PCI node in Qualcomm SC8180x DTS has 8 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 > > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > --- > > Please take the patch via PCI tree. > > Changes in v3: > 1. Split from sm8150 change. Due to split/changes around sm8150, drop > Mani's Rb tag. > 2. Drop unneeded oneOf for clocks. > > Changes in v2: > 1. Add Acs/Rb. > 2. Correct error message for sm8150. > --- > .../devicetree/bindings/pci/qcom,pcie.yaml | 28 ++++++++++++++++++- > 1 file changed, 27 insertions(+), 1 deletion(-) > Acked-by: Rob Herring <robh@kernel.org>
On 8.12.2023 11:51, Krzysztof Kozlowski wrote: > PCI node in Qualcomm SC8180x DTS has 8 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 > > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > --- [...] > + 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 Are we sure this one is actually necessary? Or is it just for the SMMU debug peripheral? [1] Would be nice to test if it works normally (unused clk shutdown / forced shutdown of this one might be necessary in case it's on from XBL) and during a PCIe-related SMMU fault. Konrad [1] https://lore.kernel.org/linux-arm-msm/20231118042730.2799-1-quic_c_gdjako@quicinc.com/
On 12/11/23 11:04, Krzysztof Kozlowski wrote: > On 09/12/2023 18:38, Konrad Dybcio wrote: >> On 8.12.2023 11:51, Krzysztof Kozlowski wrote: >>> PCI node in Qualcomm SC8180x DTS has 8 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 >>> >>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> >>> >>> --- >> [...] >> >>> + 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 >> Are we sure this one is actually necessary? Or is it just for the >> SMMU debug peripheral? [1] Would be nice to test if it works >> normally (unused clk shutdown / forced shutdown of this one might >> be necessary in case it's on from XBL) and during a PCIe-related >> SMMU fault. > > I did not validate whether the list is actually correct with datasheets, > but aligned it to DTS. I don't have the hardware to test. While I can't test suspend yet, the PCIe itself works fine without these clocks. Mani, can we get rid of it? Konrad
diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml index 5056da499f04..5214bf7a9045 100644 --- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml +++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml @@ -483,6 +483,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: @@ -531,7 +558,6 @@ allOf: compatible: contains: enum: - - qcom,pcie-sc8180x - qcom,pcie-sm8150 - qcom,pcie-sm8250 then:
PCI node in Qualcomm SC8180x DTS has 8 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 Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> --- Please take the patch via PCI tree. Changes in v3: 1. Split from sm8150 change. Due to split/changes around sm8150, drop Mani's Rb tag. 2. Drop unneeded oneOf for clocks. Changes in v2: 1. Add Acs/Rb. 2. Correct error message for sm8150. --- .../devicetree/bindings/pci/qcom,pcie.yaml | 28 ++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-)