Add bindings for PCIe hosts on IPQ9574 platform and allow
msi-parent property.
Signed-off-by: Devi Priya <quic_devipriy@quicinc.com>
---
Changes in V3:
- Rebased on linux-next/master
.../devicetree/bindings/pci/qcom,pcie.yaml | 40 +++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
index 81971be4e554..a92cecc5fe6f 100644
--- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
+++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
@@ -26,6 +26,7 @@ properties:
- qcom,pcie-ipq8064-v2
- qcom,pcie-ipq8074
- qcom,pcie-ipq8074-gen3
+ - qcom,pcie-ipq9574
- qcom,pcie-msm8996
- qcom,pcie-qcs404
- qcom,pcie-sa8540p
@@ -113,6 +114,8 @@ properties:
power-domains:
maxItems: 1
+ msi-parent: true
+
perst-gpios:
description: GPIO controlled connection to PERST# signal
maxItems: 1
@@ -138,6 +141,8 @@ anyOf:
- required:
- msi-map
- msi-map-mask
+ - required:
+ - msi-parent
allOf:
- $ref: /schemas/pci/pci-bus.yaml#
@@ -171,6 +176,7 @@ allOf:
enum:
- qcom,pcie-ipq6018
- qcom,pcie-ipq8074-gen3
+ - qcom,pcie-ipq9574
then:
properties:
reg:
@@ -382,6 +388,39 @@ allOf:
- const: ahb # AHB Reset
- const: axi_m_sticky # AXI Master Sticky reset
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - qcom,pcie-ipq9574
+ then:
+ properties:
+ clocks:
+ minItems: 6
+ maxItems: 6
+ clock-names:
+ items:
+ - const: ahb # AHB clock
+ - const: aux # Auxiliary clock
+ - const: axi_m # AXI Master clock
+ - const: axi_s # AXI Slave clock
+ - const: axi_bridge # AXI bridge clock
+ - const: rchng
+ resets:
+ minItems: 8
+ maxItems: 8
+ reset-names:
+ items:
+ - const: pipe # PIPE reset
+ - const: sticky # Core Sticky reset
+ - const: axi_s_sticky # AXI Slave Sticky reset
+ - const: axi_s # AXI Slave reset
+ - const: axi_m_sticky # AXI Master Sticky reset
+ - const: axi_m # AXI Master reset
+ - const: aux # AUX Reset
+ - const: ahb # AHB Reset
+
- if:
properties:
compatible:
@@ -767,6 +806,7 @@ allOf:
- qcom,pcie-ipq8064v2
- qcom,pcie-ipq8074
- qcom,pcie-ipq8074-gen3
+ - qcom,pcie-ipq9574
- qcom,pcie-qcs404
then:
required:
--
2.17.1
On Fri, Apr 21, 2023 at 06:19:35PM +0530, Devi Priya wrote: > Add bindings for PCIe hosts on IPQ9574 platform and allow > msi-parent property. Go see the long discussion about why msi-parent with msi-map is wrong. If something changed, explain that here. > > Signed-off-by: Devi Priya <quic_devipriy@quicinc.com> > --- > Changes in V3: > - Rebased on linux-next/master > > .../devicetree/bindings/pci/qcom,pcie.yaml | 40 +++++++++++++++++++ > 1 file changed, 40 insertions(+) > > diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml > index 81971be4e554..a92cecc5fe6f 100644 > --- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml > +++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml > @@ -26,6 +26,7 @@ properties: > - qcom,pcie-ipq8064-v2 > - qcom,pcie-ipq8074 > - qcom,pcie-ipq8074-gen3 > + - qcom,pcie-ipq9574 > - qcom,pcie-msm8996 > - qcom,pcie-qcs404 > - qcom,pcie-sa8540p > @@ -113,6 +114,8 @@ properties: > power-domains: > maxItems: 1 > > + msi-parent: true > + > perst-gpios: > description: GPIO controlled connection to PERST# signal > maxItems: 1 > @@ -138,6 +141,8 @@ anyOf: > - required: > - msi-map > - msi-map-mask > + - required: > + - msi-parent > > allOf: > - $ref: /schemas/pci/pci-bus.yaml# > @@ -171,6 +176,7 @@ allOf: > enum: > - qcom,pcie-ipq6018 > - qcom,pcie-ipq8074-gen3 > + - qcom,pcie-ipq9574 > then: > properties: > reg: > @@ -382,6 +388,39 @@ allOf: > - const: ahb # AHB Reset > - const: axi_m_sticky # AXI Master Sticky reset > > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,pcie-ipq9574 > + then: > + properties: > + clocks: > + minItems: 6 > + maxItems: 6 > + clock-names: > + items: > + - const: ahb # AHB clock > + - const: aux # Auxiliary clock > + - const: axi_m # AXI Master clock > + - const: axi_s # AXI Slave clock > + - const: axi_bridge # AXI bridge clock > + - const: rchng > + resets: > + minItems: 8 > + maxItems: 8 > + reset-names: > + items: > + - const: pipe # PIPE reset > + - const: sticky # Core Sticky reset > + - const: axi_s_sticky # AXI Slave Sticky reset > + - const: axi_s # AXI Slave reset > + - const: axi_m_sticky # AXI Master Sticky reset > + - const: axi_m # AXI Master reset > + - const: aux # AUX Reset > + - const: ahb # AHB Reset > + > - if: > properties: > compatible: > @@ -767,6 +806,7 @@ allOf: > - qcom,pcie-ipq8064v2 > - qcom,pcie-ipq8074 > - qcom,pcie-ipq8074-gen3 > + - qcom,pcie-ipq9574 > - qcom,pcie-qcs404 > then: > required: > -- > 2.17.1 >
On 4/25/2023 11:03 PM, Rob Herring wrote: > On Fri, Apr 21, 2023 at 06:19:35PM +0530, Devi Priya wrote: >> Add bindings for PCIe hosts on IPQ9574 platform and allow >> msi-parent property. > > Go see the long discussion about why msi-parent with msi-map is wrong. > If something changed, explain that here. Sure, okay Thanks, Devi Priya > >> >> Signed-off-by: Devi Priya <quic_devipriy@quicinc.com> >> --- >> Changes in V3: >> - Rebased on linux-next/master >> >> .../devicetree/bindings/pci/qcom,pcie.yaml | 40 +++++++++++++++++++ >> 1 file changed, 40 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml >> index 81971be4e554..a92cecc5fe6f 100644 >> --- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml >> +++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml >> @@ -26,6 +26,7 @@ properties: >> - qcom,pcie-ipq8064-v2 >> - qcom,pcie-ipq8074 >> - qcom,pcie-ipq8074-gen3 >> + - qcom,pcie-ipq9574 >> - qcom,pcie-msm8996 >> - qcom,pcie-qcs404 >> - qcom,pcie-sa8540p >> @@ -113,6 +114,8 @@ properties: >> power-domains: >> maxItems: 1 >> >> + msi-parent: true >> + >> perst-gpios: >> description: GPIO controlled connection to PERST# signal >> maxItems: 1 >> @@ -138,6 +141,8 @@ anyOf: >> - required: >> - msi-map >> - msi-map-mask >> + - required: >> + - msi-parent >> >> allOf: >> - $ref: /schemas/pci/pci-bus.yaml# >> @@ -171,6 +176,7 @@ allOf: >> enum: >> - qcom,pcie-ipq6018 >> - qcom,pcie-ipq8074-gen3 >> + - qcom,pcie-ipq9574 >> then: >> properties: >> reg: >> @@ -382,6 +388,39 @@ allOf: >> - const: ahb # AHB Reset >> - const: axi_m_sticky # AXI Master Sticky reset >> >> + - if: >> + properties: >> + compatible: >> + contains: >> + enum: >> + - qcom,pcie-ipq9574 >> + then: >> + properties: >> + clocks: >> + minItems: 6 >> + maxItems: 6 >> + clock-names: >> + items: >> + - const: ahb # AHB clock >> + - const: aux # Auxiliary clock >> + - const: axi_m # AXI Master clock >> + - const: axi_s # AXI Slave clock >> + - const: axi_bridge # AXI bridge clock >> + - const: rchng >> + resets: >> + minItems: 8 >> + maxItems: 8 >> + reset-names: >> + items: >> + - const: pipe # PIPE reset >> + - const: sticky # Core Sticky reset >> + - const: axi_s_sticky # AXI Slave Sticky reset >> + - const: axi_s # AXI Slave reset >> + - const: axi_m_sticky # AXI Master Sticky reset >> + - const: axi_m # AXI Master reset >> + - const: aux # AUX Reset >> + - const: ahb # AHB Reset >> + >> - if: >> properties: >> compatible: >> @@ -767,6 +806,7 @@ allOf: >> - qcom,pcie-ipq8064v2 >> - qcom,pcie-ipq8074 >> - qcom,pcie-ipq8074-gen3 >> + - qcom,pcie-ipq9574 >> - qcom,pcie-qcs404 >> then: >> required: >> -- >> 2.17.1 >>
© 2016 - 2025 Red Hat, Inc.