From: Mayank Rana <quic_mrana@quicinc.com>
To: <will@kernel.org>, <lpieralisi@kernel.org>, <kw@linux.com>,
<robh@kernel.org>, <bhelgaas@google.com>, <jingoohan1@gmail.com>,
<manivannan.sadhasivam@linaro.org>, <cassel@kernel.org>,
<yoshihiro.shimoda.uh@renesas.com>, <s-vadapalli@ti.com>,
<u.kleine-koenig@pengutronix.de>, <dlemoal@kernel.org>,
<amishin@t-argos.ru>, <thierry.reding@gmail.com>,
<jonathanh@nvidia.com>, <Frank.Li@nxp.com>,
<ilpo.jarvinen@linux.intel.com>, <vidyas@nvidia.com>,
<marek.vasut+renesas@gmail.com>, <krzk+dt@kernel.org>,
<conor+dt@kernel.org>, <linux-pci@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<devicetree@vger.kernel.org>
Cc: <quic_ramkri@quicinc.com>, <quic_nkela@quicinc.com>,
<quic_shazhuss@quicinc.com>, <quic_msarkar@quicinc.com>,
<quic_nitegupt@quicinc.com>, Mayank Rana <quic_mrana@quicinc.com>
Subject: [PATCH V226/7] dt-bindings: PCI: host-generic-pci: Add snps,dw-pcie-ecam-msi binding
Date: Mon, 15 Jul 2024 11:13:34 -0700 [thread overview]
Message-ID: <1721067215-5832-7-git-send-email-quic_mrana@quicinc.com> (raw)
In-Reply-To: <1721067215-5832-1-git-send-email-quic_mrana@quicinc.com>
To support MSI functionality using Synopsys DesignWare PCIe controller
based MSI controller with ECAM driver, add "snps,dw-pcie-ecam-msi
compatible binding which uses provided SPIs to support MSI functionality.
Signed-off-by: Mayank Rana <quic_mrana@quicinc.com>
---
.../devicetree/bindings/pci/host-generic-pci.yaml | 57 ++++++++++++++++++++++
1 file changed, 57 insertions(+)
diff --git a/Documentation/devicetree/bindings/pci/host-generic-pci.yaml b/Documentation/devicetree/bindings/pci/host-generic-pci.yaml
index 9c714fa..9e860d5 100644
--- a/Documentation/devicetree/bindings/pci/host-generic-pci.yaml
+++ b/Documentation/devicetree/bindings/pci/host-generic-pci.yaml
@@ -81,6 +81,12 @@ properties:
- marvell,armada8k-pcie-ecam
- socionext,synquacer-pcie-ecam
- const: snps,dw-pcie-ecam
+ - description: |
+ Firmware is configuring Synopsys DesignWare PCIe controller in RC mode with
+ ECAM compatible fashion. To use MSI controller of Synopsys DesignWare PCIe
+ controller for MSI functionality, this compatible is used.
+ items:
+ - const: snps,dw-pcie-ecam-msi
- description:
CAM or ECAM compliant PCI host controllers without any quirks
enum:
@@ -116,6 +122,20 @@ properties:
A phandle to the node that controls power or/and system resource or interface to firmware
to enable ECAM compliant PCIe root complex.
+ interrupts:
+ description:
+ DWC PCIe Root Port/Complex specific MSI interrupt/IRQs.
+ minItems: 1
+ maxItems: 8
+
+ interrupt-names:
+ description:
+ MSI interrupt names
+ minItems: 1
+ maxItems: 8
+ items:
+ pattern: '^msi[0-9]+$'
+
required:
- compatible
- reg
@@ -146,11 +166,22 @@ allOf:
reg:
maxItems: 1
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: snps,dw-pcie-ecam-msi
+ then:
+ required:
+ - interrupts
+ - interrupt-names
+
unevaluatedProperties: false
examples:
- |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
bus {
#address-cells = <2>;
#size-cells = <2>;
@@ -180,5 +211,31 @@ examples:
interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
power-domains = <&scmi5_pd 0>;
};
+
+ pcie0: pci@1c00000 {
+ compatible = "snps,dw-pcie-ecam-msi";
+ reg = <0x4 0x00000000 0 0x10000000>;
+ device_type = "pci";
+ #address-cells = <3>;
+ #size-cells = <2>;
+ ranges = <0x02000000 0x0 0x40100000 0x0 0x40100000 0x0 0x1ff00000>,
+ <0x43000000 0x4 0x10100000 0x4 0x10100000 0x0 0x40000000>;
+ bus-range = <0x00 0xff>;
+ dma-coherent;
+ linux,pci-domain = <0>;
+ power-domains = <&scmi5_pd 0>;
+ iommu-map = <0x0 &pcie_smmu 0x0000 0x1>,
+ <0x100 &pcie_smmu 0x0001 0x1>;
+
+ interrupts = <GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 313 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 374 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 375 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "msi0", "msi1", "msi2", "msi3", "msi4", "msi5", "msi6", "msi7";
+ };
};
...
--
2.7.4
next prev parent reply other threads:[~2024-07-15 18:14 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-15 18:13 [PATCH V2 0/7] Add power domain and MSI functionality with PCIe host generic ECAM driver Mayank Rana
2024-07-15 18:13 ` [PATCH V2 1/7] PCI: dwc: Move MSI functionality related code to separate file Mayank Rana
2024-07-31 16:40 ` Manivannan Sadhasivam
2024-07-15 18:13 ` [PATCH V222/7] PCI: dwc: Add msi_ops to allow DBI based MSI register access Mayank Rana
2024-07-31 17:17 ` Manivannan Sadhasivam
2024-07-15 18:13 ` [PATCH V2 3/7] PCI: dwc: Add pcie-designware-msi driver related Kconfig option Mayank Rana
2024-07-15 18:39 ` Andrew Lunn
2024-07-16 0:04 ` Mayank Rana
2024-07-15 18:13 ` [PATCH V2 4/7] dt-bindings: PCI: host-generic-pci: Add power-domains related binding Mayank Rana
2024-07-16 7:25 ` Krzysztof Kozlowski
2024-07-16 21:47 ` Mayank Rana
2024-07-15 18:13 ` [PATCH V2 5/7] PCI: host-generic: Add power domain based handling for PCIe controller Mayank Rana
2024-07-15 18:13 ` Mayank Rana [this message]
2024-07-15 19:43 ` [PATCH V226/7] dt-bindings: PCI: host-generic-pci: Add snps,dw-pcie-ecam-msi binding Rob Herring (Arm)
2024-07-16 7:28 ` Krzysztof Kozlowski
2024-07-16 22:09 ` Mayank Rana
2024-07-17 6:47 ` Krzysztof Kozlowski
2024-07-17 17:20 ` Mayank Rana
2024-07-18 6:05 ` Krzysztof Kozlowski
2024-07-18 23:19 ` Mayank Rana
2024-07-20 18:30 ` Krzysztof Kozlowski
2024-07-31 17:26 ` Manivannan Sadhasivam
2024-07-15 18:13 ` [PATCH V2 7/7] PCI: host-generic: Add dwc PCIe controller based MSI controller usage Mayank Rana
2024-07-16 8:58 ` Will Deacon
2024-07-16 13:42 ` Rob Herring
2024-07-16 22:32 ` Mayank Rana
2024-07-23 22:56 ` Mayank Rana
2024-07-24 9:54 ` Manivannan Sadhasivam
2024-07-24 2:13 ` [PATCH V2 0/7] Add power domain and MSI functionality with PCIe host generic ECAM driver Dmitry Baryshkov
2024-07-24 3:58 ` Mayank Rana
2024-07-24 7:12 ` Dmitry Baryshkov
2024-07-24 13:31 ` Manivannan Sadhasivam
2024-07-24 13:34 ` Dmitry Baryshkov
2024-07-24 16:51 ` Mayank Rana
2024-07-29 17:19 ` Mayank Rana
2024-07-30 5:34 ` Manivannan Sadhasivam
2024-07-30 16:16 ` Mayank Rana
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1721067215-5832-7-git-send-email-quic_mrana@quicinc.com \
--to=quic_mrana@quicinc.com \
--cc=Frank.Li@nxp.com \
--cc=amishin@t-argos.ru \
--cc=bhelgaas@google.com \
--cc=cassel@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dlemoal@kernel.org \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=jingoohan1@gmail.com \
--cc=jonathanh@nvidia.com \
--cc=krzk+dt@kernel.org \
--cc=kw@linux.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-pci@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=manivannan.sadhasivam@linaro.org \
--cc=marek.vasut+renesas@gmail.com \
--cc=quic_msarkar@quicinc.com \
--cc=quic_nitegupt@quicinc.com \
--cc=quic_nkela@quicinc.com \
--cc=quic_ramkri@quicinc.com \
--cc=quic_shazhuss@quicinc.com \
--cc=robh@kernel.org \
--cc=s-vadapalli@ti.com \
--cc=thierry.reding@gmail.com \
--cc=u.kleine-koenig@pengutronix.de \
--cc=vidyas@nvidia.com \
--cc=will@kernel.org \
--cc=yoshihiro.shimoda.uh@renesas.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).