devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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


  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).