From: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
To: lorenzo.pieralisi@arm.com, robh@kernel.org, bhelgaas@google.com
Cc: bjorn.andersson@linaro.org, linux-arm-msm@vger.kernel.org,
linux-pci@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Subject: [PATCH 1/3] dt-bindings: pci: Add devicetree binding for Qualcomm PCIe EP controller
Date: Wed, 2 Jun 2021 17:37:50 +0530 [thread overview]
Message-ID: <20210602120752.46154-2-manivannan.sadhasivam@linaro.org> (raw)
In-Reply-To: <20210602120752.46154-1-manivannan.sadhasivam@linaro.org>
Add devicetree binding for Qualcomm PCIe EP controller used in platforms
like SDX55. The EP controller is based on the Designware core with
Qualcomm specific wrappers.
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
---
.../devicetree/bindings/pci/qcom,pcie-ep.yaml | 139 ++++++++++++++++++
1 file changed, 139 insertions(+)
create mode 100644 Documentation/devicetree/bindings/pci/qcom,pcie-ep.yaml
diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie-ep.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie-ep.yaml
new file mode 100644
index 000000000000..0f9140e93bcb
--- /dev/null
+++ b/Documentation/devicetree/bindings/pci/qcom,pcie-ep.yaml
@@ -0,0 +1,139 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pci/qcom,pcie-ep.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm PCIe Endpoint Controller binding
+
+maintainers:
+ - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+
+allOf:
+ - $ref: "pci-ep.yaml#"
+
+properties:
+ compatible:
+ const: qcom,pcie-ep
+
+ reg:
+ items:
+ - description: Designware PCIe registers
+ - description: External local bus interface registers
+ - description: Address Translation Unit (ATU) registers
+ - description: Memory region used to map remote RC address space
+ - description: Qualcomm specific PARF configuration registers
+ - description: Qualcomm specific TCSR registers
+
+ reg-names:
+ items:
+ - const: dbi
+ - const: elbi
+ - const: atu
+ - const: addr_space
+ - const: parf
+ - const: tcsr
+
+ clocks:
+ items:
+ - description: PCIe CFG AHB clock
+ - description: PCIe Auxiliary clock
+ - description: PCIe Master AXI clock
+ - description: PCIe Slave AXI clock
+ - description: PCIe Reference clock
+ - description: PCIe Sleep clock
+ - description: PCIe Slave Q2A AXI clock
+
+ clock-names:
+ items:
+ - const: cfg
+ - const: aux
+ - const: bus_master
+ - const: bus_slave
+ - const: ref
+ - const: sleep
+ - const: slave_q2a
+
+ interrupts:
+ maxItems: 1
+ description: PCIe Global interrupt
+
+ interrupt-names:
+ const: int_global
+
+ perst-gpios:
+ description: PCIe endpoint reset GPIO
+ maxItems: 1
+
+ wake-gpios:
+ description: PCIe endpoint wake GPIO
+ maxItems: 1
+
+ resets:
+ maxItems: 1
+
+ reset-names:
+ const: core_reset
+
+ power-domains:
+ maxItems: 1
+
+ phys:
+ maxItems: 1
+
+ phy-names:
+ const: pciephy
+
+required:
+ - compatible
+ - reg
+ - reg-names
+ - clocks
+ - clock-names
+ - interrupts
+ - interrupt-names
+ - perst-gpios
+ - resets
+ - reset-names
+ - power-domains
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/clock/qcom,gcc-sdx55.h>
+ #include <dt-bindings/gpio/gpio.h>
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ pcie_ep: pcie-ep@40000000 {
+ compatible = "qcom,pcie-ep";
+
+ reg = <0x40000000 0xf1d>,
+ <0x40000f20 0xc8>,
+ <0x40001000 0x1000>,
+ <0x42000000 0x1000>,
+ <0x01c00000 0x3000>,
+ <0x01fcb000 0x1000>;
+ reg-names = "dbi", "elbi", "atu", "addr_space", "parf", "tcsr";
+
+ clocks = <&gcc GCC_PCIE_CFG_AHB_CLK>,
+ <&gcc GCC_PCIE_AUX_CLK>,
+ <&gcc GCC_PCIE_MSTR_AXI_CLK>,
+ <&gcc GCC_PCIE_SLV_AXI_CLK>,
+ <&gcc GCC_PCIE_0_CLKREF_CLK>,
+ <&gcc GCC_PCIE_SLEEP_CLK>,
+ <&gcc GCC_PCIE_SLV_Q2A_AXI_CLK>;
+ clock-names = "cfg", "aux", "bus_master", "bus_slave",
+ "ref", "sleep", "slave_q2a";
+
+ interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "int_global";
+ perst-gpios = <&tlmm 57 GPIO_ACTIVE_HIGH>;
+ wake-gpios = <&tlmm 53 GPIO_ACTIVE_LOW>;
+ resets = <&gcc GCC_PCIE_BCR>;
+ reset-names = "core_reset";
+ power-domains = <&gcc PCIE_GDSC>;
+ phys = <&pcie0_lane>;
+ phy-names = "pciephy";
+ max-link-speed = <3>;
+ num-lanes = <2>;
+ };
--
2.25.1
next prev parent reply other threads:[~2021-06-02 12:08 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-02 12:07 [PATCH 0/3] Add Qualcomm PCIe Endpoint driver support Manivannan Sadhasivam
2021-06-02 12:07 ` Manivannan Sadhasivam [this message]
2021-06-02 14:22 ` [PATCH 1/3] dt-bindings: pci: Add devicetree binding for Qualcomm PCIe EP controller Rob Herring
2021-06-02 14:37 ` Manivannan Sadhasivam
2021-06-02 12:07 ` [PATCH 2/3] PCI: dwc: Add Qualcomm PCIe Endpoint controller driver Manivannan Sadhasivam
2021-06-02 14:05 ` kernel test robot
2021-06-02 12:07 ` [PATCH 3/3] MAINTAINERS: Add entry for Qualcomm PCIe Endpoint driver and binding Manivannan Sadhasivam
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=20210602120752.46154-2-manivannan.sadhasivam@linaro.org \
--to=manivannan.sadhasivam@linaro.org \
--cc=bhelgaas@google.com \
--cc=bjorn.andersson@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=lorenzo.pieralisi@arm.com \
--cc=robh@kernel.org \
/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).