From: Frank Wunderlich <linux@fw-web.de>
To: linux-mediatek@lists.infradead.org
Cc: Frank Wunderlich <frank-w@public-files.de>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, Sam Shih <sam.shih@mediatek.com>,
Jieyy Yang <jieyy.yang@mediatek.com>
Subject: [RFC v1 07/12] arm64: dts: mt7986: add pcie related device nodes
Date: Mon, 17 Oct 2022 12:41:36 +0200 [thread overview]
Message-ID: <20221017104141.7338-8-linux@fw-web.de> (raw)
In-Reply-To: <20221017104141.7338-1-linux@fw-web.de>
From: Sam Shih <sam.shih@mediatek.com>
This patch adds PCIe support for MT7986.
Signed-off-by: Jieyy Yang <jieyy.yang@mediatek.com>
Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
---
changes compared to sams original version:
- add clock-names to pcie node
driver does bulk handling without names, but binding requires 6 clocks
and not only 5 we have
---
arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts | 17 ++++++
arch/arm64/boot/dts/mediatek/mt7986a.dtsi | 54 ++++++++++++++++++++
2 files changed, 71 insertions(+)
diff --git a/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts b/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts
index 58f7e6b169bf..c08ca4746014 100644
--- a/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts
@@ -54,7 +54,24 @@ switch: switch@0 {
};
};
+&pcie {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pcie_pins>;
+ status = "okay";
+};
+
+&pcie_phy {
+ status = "okay";
+};
+
&pio {
+ pcie_pins: pcie-pins {
+ mux {
+ function = "pcie";
+ groups = "pcie_clk", "pcie_wake", "pcie_pereset";
+ };
+ };
+
spi_flash_pins: spi-flash-pins {
mux {
function = "spi";
diff --git a/arch/arm64/boot/dts/mediatek/mt7986a.dtsi b/arch/arm64/boot/dts/mediatek/mt7986a.dtsi
index e77e8deec4b0..007c1e25a639 100644
--- a/arch/arm64/boot/dts/mediatek/mt7986a.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt7986a.dtsi
@@ -8,6 +8,7 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/mt7986-clk.h>
#include <dt-bindings/reset/mt7986-resets.h>
+#include <dt-bindings/phy/phy.h>
/ {
interrupt-parent = <&gic>;
@@ -246,6 +247,59 @@ uart2: serial@11004000 {
status = "disabled";
};
+ pcie: pcie@11280000 {
+ compatible = "mediatek,mt7986-pcie",
+ "mediatek,mt8192-pcie";
+ device_type = "pci";
+ #address-cells = <3>;
+ #size-cells = <2>;
+ reg = <0x00 0x11280000 0x00 0x4000>;
+ reg-names = "pcie-mac";
+ interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
+ bus-range = <0x00 0xff>;
+ ranges = <0x82000000 0x00 0x20000000 0x00
+ 0x20000000 0x00 0x10000000>;
+ clocks = <&infracfg CLK_INFRA_PCIE_SEL>,
+ <&infracfg CLK_INFRA_IPCIE_CK>,
+ <&infracfg CLK_INFRA_IPCIE_PIPE_CK>,
+ <&infracfg CLK_INFRA_IPCIER_CK>,
+ <&infracfg CLK_INFRA_IPCIEB_CK>;
+ clock-names = "pl_250m", "tl_26m", "tl_96m",
+ "tl_32k", "peri_26m";
+ status = "disabled";
+
+ phys = <&pcie_port PHY_TYPE_PCIE>;
+ phy-names = "pcie-phy";
+
+ #interrupt-cells = <1>;
+ interrupt-map-mask = <0 0 0 0x7>;
+ interrupt-map = <0 0 0 1 &pcie_intc 0>,
+ <0 0 0 2 &pcie_intc 1>,
+ <0 0 0 3 &pcie_intc 2>,
+ <0 0 0 4 &pcie_intc 3>;
+ pcie_intc: interrupt-controller {
+ #address-cells = <0>;
+ #interrupt-cells = <1>;
+ interrupt-controller;
+ };
+ };
+
+ pcie_phy: t-phy@11c00000 {
+ compatible = "mediatek,mt7986-tphy",
+ "mediatek,generic-tphy-v2";
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+ status = "disabled";
+
+ pcie_port: pcie-phy@11c00000 {
+ reg = <0 0x11c00000 0 0x20000>;
+ clocks = <&clk40m>;
+ clock-names = "ref";
+ #phy-cells = <1>;
+ };
+ };
+
ethsys: syscon@15000000 {
#address-cells = <1>;
#size-cells = <1>;
--
2.34.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-10-17 10:46 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-17 10:41 [RFC v1 00/12] Add BananaPi R3 Frank Wunderlich
2022-10-17 10:41 ` [RFC v1 01/12] dt-bindings: phy: mediatek,tphy: add support for mt7986 Frank Wunderlich
2022-10-18 15:34 ` Krzysztof Kozlowski
2022-10-17 10:41 ` [RFC v1 02/12] dt-bindings: PCI: mediatek-gen3: " Frank Wunderlich
2022-10-18 15:35 ` Krzysztof Kozlowski
2022-10-18 15:45 ` Aw: " Frank Wunderlich
2022-10-19 8:28 ` AngeloGioacchino Del Regno
2022-10-19 9:36 ` Frank Wunderlich
2022-10-17 10:41 ` [RFC v1 03/12] dt-bindings: usb: mtk-xhci: " Frank Wunderlich
2022-10-18 15:35 ` Krzysztof Kozlowski
2022-10-17 10:41 ` [RFC v1 04/12] dt-bindings: arm64: dts: mediatek: add compatible for bananapi r3 Frank Wunderlich
2022-10-18 15:35 ` Krzysztof Kozlowski
2022-10-17 10:41 ` [RFC v1 05/12] arm64: dts: mt7986: harmonize device node order Frank Wunderlich
2022-10-17 10:41 ` [RFC v1 06/12] arm64: dts: mt7986: add spi related device nodes Frank Wunderlich
2022-10-17 10:41 ` Frank Wunderlich [this message]
2022-10-18 15:11 ` Aw: [RFC v1 07/12] arm64: dts: mt7986: add pcie " Frank Wunderlich
2022-10-23 18:07 ` Frank Wunderlich
2022-10-17 10:41 ` [RFC v1 08/12] arm64: dts: mt7986: add usb " Frank Wunderlich
2022-10-17 10:41 ` [RFC v1 09/12] arm64: dts: mt7986: add crypto " Frank Wunderlich
2022-10-17 10:41 ` [RFC v1 10/12] arm64: dts: mt7986: add mmc " Frank Wunderlich
2022-10-17 10:41 ` [RFC v1 11/12] arm64: dts: mt7986: add i2c node Frank Wunderlich
2022-10-17 10:41 ` [RFC v1 12/12] arm64: dts: mt7986: add Bananapi R3 Frank Wunderlich
2022-10-18 15:38 ` Krzysztof Kozlowski
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=20221017104141.7338-8-linux@fw-web.de \
--to=linux@fw-web.de \
--cc=devicetree@vger.kernel.org \
--cc=frank-w@public-files.de \
--cc=jieyy.yang@mediatek.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=matthias.bgg@gmail.com \
--cc=robh+dt@kernel.org \
--cc=sam.shih@mediatek.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).