mirror of
https://git.openwrt.org/openwrt/openwrt.git
synced 2025-05-21 13:47:57 +00:00
Refresh 6.12 patches, those that failed automatic refresh were refreshed manually. DT bindings patches that failed were dropped as we dont use them in practice. Link: https://github.com/openwrt/openwrt/pull/18795 Signed-off-by: Robert Marko <robimarko@gmail.com>
373 lines
12 KiB
Diff
373 lines
12 KiB
Diff
From patchwork Sat Apr 26 08:47:20 2025
|
|
Content-Type: text/plain; charset="utf-8"
|
|
MIME-Version: 1.0
|
|
Content-Transfer-Encoding: 7bit
|
|
X-Patchwork-Submitter: George Moussalem <george.moussalem@outlook.com>
|
|
X-Patchwork-Id: 14067566
|
|
Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org
|
|
[10.30.226.201])
|
|
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
|
|
(No client certificate requested)
|
|
by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7F4681C84B1;
|
|
Sat, 26 Apr 2025 08:47:51 +0000 (UTC)
|
|
Authentication-Results: smtp.subspace.kernel.org;
|
|
arc=none smtp.client-ip=10.30.226.201
|
|
ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;
|
|
t=1745657271; cv=none;
|
|
b=M866cJf/V6RxRwZ+Z/t6DUNC/4uUC28M2tFr3KZNsWjzpmjRvEQ0F/GNa8h5aJBvGnSEePGU/O/HxHPBxi4GiTA9ZVp/lf7Hs+r8IFTvSggG31OxmOlVKLlPaHAGfmFWYM/IFRz9vGSrVQ7gbQanlaR8yvblfamuIEHX1oJ+/ik=
|
|
ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org;
|
|
s=arc-20240116; t=1745657271; c=relaxed/simple;
|
|
bh=s2C/YfnCIJHh91xdt3j52t+/ImXU3ihecScu2Iibt88=;
|
|
h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References:
|
|
In-Reply-To:To:Cc;
|
|
b=dKXYWKjuQJO3BeaVAC5JVuoSJ538vu9FvW/1eGwbMzm5ZwQFOa1zMpipPc6YxOD9XZd4ckdLgr+eMg725RGmHklL/kvGpno5/oBRxdVmPAJLGO231PJgUdUGSvEZ3l2chja2181+a1mSPHhJ4aErT3SEYuWMrRf2NHDfC/Ac5wY=
|
|
ARC-Authentication-Results: i=1; smtp.subspace.kernel.org;
|
|
dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org
|
|
header.b=oFiqwO9r; arc=none smtp.client-ip=10.30.226.201
|
|
Authentication-Results: smtp.subspace.kernel.org;
|
|
dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org
|
|
header.b="oFiqwO9r"
|
|
Received: by smtp.kernel.org (Postfix) with ESMTPS id EBA53C4CEEB;
|
|
Sat, 26 Apr 2025 08:47:50 +0000 (UTC)
|
|
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
|
|
s=k20201202; t=1745657271;
|
|
bh=s2C/YfnCIJHh91xdt3j52t+/ImXU3ihecScu2Iibt88=;
|
|
h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
|
|
b=oFiqwO9r8uxa64raZD61ax5LqtigXQBAXL9AvrSRrZA/GiwcA1rmMAHQKdSaS/zin
|
|
LpatrrfpB+O005agqR5ce8kxbHa6402LS4WZPYz6H+1xJYPjUmLnNsl2vboufmGrG6
|
|
b+JrwDy5UWsBWZVvZgTUF5D9U95ZWI3iHDOUek0lkyR9EHvqUiMb/ELtA7feFItqEs
|
|
M/QeZWHKvGgfhpOtfEcRZYcdS5c8FdFDlTf5k2r0sRBKBM2XzzyIrtNtQqi+/bhvtr
|
|
sIu+wvwZhfGgJsGT8dDpLTcukN2anyL01bB076AHp3MzI2d4ggYYRFv09yVnzj50XD
|
|
5nMOYnjtjTZQw==
|
|
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
|
|
(localhost.localdomain [127.0.0.1])
|
|
by smtp.lore.kernel.org (Postfix) with ESMTP id DB3E5C369D1;
|
|
Sat, 26 Apr 2025 08:47:50 +0000 (UTC)
|
|
Date: Sat, 26 Apr 2025 12:47:20 +0400
|
|
Subject: [PATCH v9 1/2] arm64: dts: qcom: ipq5018: Add PCIe related nodes
|
|
Precedence: bulk
|
|
X-Mailing-List: linux-arm-msm@vger.kernel.org
|
|
List-Id: <linux-arm-msm.vger.kernel.org>
|
|
List-Subscribe: <mailto:linux-arm-msm+subscribe@vger.kernel.org>
|
|
List-Unsubscribe: <mailto:linux-arm-msm+unsubscribe@vger.kernel.org>
|
|
MIME-Version: 1.0
|
|
Message-Id: <20250426-ipq5018-pcie-v9-1-1f0dca6c205b@outlook.com>
|
|
References: <20250426-ipq5018-pcie-v9-0-1f0dca6c205b@outlook.com>
|
|
In-Reply-To: <20250426-ipq5018-pcie-v9-0-1f0dca6c205b@outlook.com>
|
|
To: Vinod Koul <vkoul@kernel.org>,
|
|
Kishon Vijay Abraham I <kishon@kernel.org>, Rob Herring <robh@kernel.org>,
|
|
Krzysztof Kozlowski <krzk+dt@kernel.org>,
|
|
Conor Dooley <conor+dt@kernel.org>,
|
|
Nitheesh Sekar <quic_nsekar@quicinc.com>,
|
|
Varadarajan Narayanan <quic_varada@quicinc.com>,
|
|
Bjorn Helgaas <bhelgaas@google.com>,
|
|
Lorenzo Pieralisi <lpieralisi@kernel.org>, =?utf-8?q?Krzysztof_Wilczy?=
|
|
=?utf-8?q?=C5=84ski?= <kw@linux.com>,
|
|
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>,
|
|
Bjorn Andersson <andersson@kernel.org>,
|
|
Konrad Dybcio <konradybcio@kernel.org>,
|
|
Praveenkumar I <quic_ipkumar@quicinc.com>
|
|
Cc: linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org,
|
|
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
|
|
linux-pci@vger.kernel.org, George Moussalem <george.moussalem@outlook.com>,
|
|
20250317100029.881286-1-quic_varada@quicinc.com,
|
|
20250317100029.881286-2-quic_varada@quicinc.com,
|
|
Sricharan R <quic_srichara@quicinc.com>,
|
|
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>,
|
|
Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
|
|
X-Mailer: b4 0.14.2
|
|
X-Developer-Signature: v=1; a=ed25519-sha256; t=1745657268; l=7874;
|
|
i=george.moussalem@outlook.com; s=20250321; h=from:subject:message-id;
|
|
bh=kGrZ/VHv+p7/RMeNwr0Kf61p0n/Ee/GyXpuErx0N1DQ=;
|
|
b=dmN2go3sL7VarHf/cZsYp30QQnlAI+awY3vAVLx+86ukud+nG2PwQ8rx7Aw64wCDmqdJayYWz
|
|
AhTM382VJf9AvbWcGs1CzUJw16JbmI8XNWnRHjhwbchkLu3okeDVfqI
|
|
X-Developer-Key: i=george.moussalem@outlook.com; a=ed25519;
|
|
pk=/PuRTSI9iYiHwcc6Nrde8qF4ZDhJBlUgpHdhsIjnqIk=
|
|
X-Endpoint-Received: by B4 Relay for george.moussalem@outlook.com/20250321
|
|
with auth_id=364
|
|
X-Original-From: George Moussalem <george.moussalem@outlook.com>
|
|
Reply-To: george.moussalem@outlook.com
|
|
From: George Moussalem <george.moussalem@outlook.com>
|
|
|
|
From: Nitheesh Sekar <quic_nsekar@quicinc.com>
|
|
|
|
Add phy and controller nodes for a 2-lane Gen2 and
|
|
a 1-lane Gen2 PCIe bus. IPQ5018 has 8 MSI SPI interrupts and
|
|
one global interrupt.
|
|
|
|
NOTE: the PCIe controller supports gen3, yet the phy is limited to gen2.
|
|
|
|
Signed-off-by: Nitheesh Sekar <quic_nsekar@quicinc.com>
|
|
Signed-off-by: Sricharan R <quic_srichara@quicinc.com>
|
|
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
|
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
|
|
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
|
|
Signed-off-by: George Moussalem <george.moussalem@outlook.com>
|
|
---
|
|
arch/arm64/boot/dts/qcom/ipq5018.dtsi | 238 +++++++++++++++++++++++++++++++++-
|
|
1 file changed, 236 insertions(+), 2 deletions(-)
|
|
|
|
--- a/arch/arm64/boot/dts/qcom/ipq5018.dtsi
|
|
+++ b/arch/arm64/boot/dts/qcom/ipq5018.dtsi
|
|
@@ -258,6 +258,40 @@
|
|
#thermal-sensor-cells = <1>;
|
|
};
|
|
|
|
+ pcie1_phy: phy@7e000 {
|
|
+ compatible = "qcom,ipq5018-uniphy-pcie-phy";
|
|
+ reg = <0x0007e000 0x800>;
|
|
+
|
|
+ clocks = <&gcc GCC_PCIE1_PIPE_CLK>;
|
|
+
|
|
+ resets = <&gcc GCC_PCIE1_PHY_BCR>,
|
|
+ <&gcc GCC_PCIE1PHY_PHY_BCR>;
|
|
+
|
|
+ #clock-cells = <0>;
|
|
+ #phy-cells = <0>;
|
|
+
|
|
+ num-lanes = <1>;
|
|
+
|
|
+ status = "disabled";
|
|
+ };
|
|
+
|
|
+ pcie0_phy: phy@86000 {
|
|
+ compatible = "qcom,ipq5018-uniphy-pcie-phy";
|
|
+ reg = <0x00086000 0x1000>;
|
|
+
|
|
+ clocks = <&gcc GCC_PCIE0_PIPE_CLK>;
|
|
+
|
|
+ resets = <&gcc GCC_PCIE0_PHY_BCR>,
|
|
+ <&gcc GCC_PCIE0PHY_PHY_BCR>;
|
|
+
|
|
+ #clock-cells = <0>;
|
|
+ #phy-cells = <0>;
|
|
+
|
|
+ num-lanes = <2>;
|
|
+
|
|
+ status = "disabled";
|
|
+ };
|
|
+
|
|
tlmm: pinctrl@1000000 {
|
|
compatible = "qcom,ipq5018-tlmm";
|
|
reg = <0x01000000 0x300000>;
|
|
@@ -281,8 +315,8 @@
|
|
reg = <0x01800000 0x80000>;
|
|
clocks = <&xo_board_clk>,
|
|
<&sleep_clk>,
|
|
- <0>,
|
|
- <0>,
|
|
+ <&pcie0_phy>,
|
|
+ <&pcie1_phy>,
|
|
<0>,
|
|
<0>,
|
|
<0>,
|
|
@@ -498,6 +532,208 @@
|
|
status = "disabled";
|
|
};
|
|
};
|
|
+
|
|
+ pcie1: pcie@80000000 {
|
|
+ compatible = "qcom,pcie-ipq5018";
|
|
+ reg = <0x80000000 0xf1d>,
|
|
+ <0x80000f20 0xa8>,
|
|
+ <0x80001000 0x1000>,
|
|
+ <0x00078000 0x3000>,
|
|
+ <0x80100000 0x1000>,
|
|
+ <0x0007b000 0x1000>;
|
|
+ reg-names = "dbi",
|
|
+ "elbi",
|
|
+ "atu",
|
|
+ "parf",
|
|
+ "config",
|
|
+ "mhi";
|
|
+ device_type = "pci";
|
|
+ linux,pci-domain = <1>;
|
|
+ bus-range = <0x00 0xff>;
|
|
+ num-lanes = <1>;
|
|
+ #address-cells = <3>;
|
|
+ #size-cells = <2>;
|
|
+
|
|
+ /* The controller supports Gen3, but the connected PHY is Gen2-capable */
|
|
+ max-link-speed = <2>;
|
|
+
|
|
+ phys = <&pcie1_phy>;
|
|
+ phy-names ="pciephy";
|
|
+
|
|
+ ranges = <0x01000000 0 0x00000000 0x80200000 0 0x00100000>,
|
|
+ <0x02000000 0 0x80300000 0x80300000 0 0x10000000>;
|
|
+
|
|
+ msi-map = <0x0 &v2m0 0x0 0xff8>;
|
|
+
|
|
+ interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
|
|
+ interrupt-names = "msi0",
|
|
+ "msi1",
|
|
+ "msi2",
|
|
+ "msi3",
|
|
+ "msi4",
|
|
+ "msi5",
|
|
+ "msi6",
|
|
+ "msi7",
|
|
+ "global";
|
|
+
|
|
+ #interrupt-cells = <1>;
|
|
+ interrupt-map-mask = <0 0 0 0x7>;
|
|
+ interrupt-map = <0 0 0 1 &intc 0 0 142 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <0 0 0 2 &intc 0 0 143 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <0 0 0 3 &intc 0 0 144 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <0 0 0 4 &intc 0 0 145 IRQ_TYPE_LEVEL_HIGH>;
|
|
+
|
|
+ clocks = <&gcc GCC_SYS_NOC_PCIE1_AXI_CLK>,
|
|
+ <&gcc GCC_PCIE1_AXI_M_CLK>,
|
|
+ <&gcc GCC_PCIE1_AXI_S_CLK>,
|
|
+ <&gcc GCC_PCIE1_AHB_CLK>,
|
|
+ <&gcc GCC_PCIE1_AUX_CLK>,
|
|
+ <&gcc GCC_PCIE1_AXI_S_BRIDGE_CLK>;
|
|
+ clock-names = "iface",
|
|
+ "axi_m",
|
|
+ "axi_s",
|
|
+ "ahb",
|
|
+ "aux",
|
|
+ "axi_bridge";
|
|
+
|
|
+ resets = <&gcc GCC_PCIE1_PIPE_ARES>,
|
|
+ <&gcc GCC_PCIE1_SLEEP_ARES>,
|
|
+ <&gcc GCC_PCIE1_CORE_STICKY_ARES>,
|
|
+ <&gcc GCC_PCIE1_AXI_MASTER_ARES>,
|
|
+ <&gcc GCC_PCIE1_AXI_SLAVE_ARES>,
|
|
+ <&gcc GCC_PCIE1_AHB_ARES>,
|
|
+ <&gcc GCC_PCIE1_AXI_MASTER_STICKY_ARES>,
|
|
+ <&gcc GCC_PCIE1_AXI_SLAVE_STICKY_ARES>;
|
|
+ reset-names = "pipe",
|
|
+ "sleep",
|
|
+ "sticky",
|
|
+ "axi_m",
|
|
+ "axi_s",
|
|
+ "ahb",
|
|
+ "axi_m_sticky",
|
|
+ "axi_s_sticky";
|
|
+
|
|
+ status = "disabled";
|
|
+
|
|
+ pcie@0 {
|
|
+ device_type = "pci";
|
|
+ reg = <0x0 0x0 0x0 0x0 0x0>;
|
|
+ bus-range = <0x01 0xff>;
|
|
+
|
|
+ #address-cells = <3>;
|
|
+ #size-cells = <2>;
|
|
+ ranges;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ pcie0: pcie@a0000000 {
|
|
+ compatible = "qcom,pcie-ipq5018";
|
|
+ reg = <0xa0000000 0xf1d>,
|
|
+ <0xa0000f20 0xa8>,
|
|
+ <0xa0001000 0x1000>,
|
|
+ <0x00080000 0x3000>,
|
|
+ <0xa0100000 0x1000>,
|
|
+ <0x00083000 0x1000>;
|
|
+ reg-names = "dbi",
|
|
+ "elbi",
|
|
+ "atu",
|
|
+ "parf",
|
|
+ "config",
|
|
+ "mhi";
|
|
+ device_type = "pci";
|
|
+ linux,pci-domain = <0>;
|
|
+ bus-range = <0x00 0xff>;
|
|
+ num-lanes = <2>;
|
|
+ #address-cells = <3>;
|
|
+ #size-cells = <2>;
|
|
+
|
|
+ /* The controller supports Gen3, but the connected PHY is Gen2-capable */
|
|
+ max-link-speed = <2>;
|
|
+
|
|
+ phys = <&pcie0_phy>;
|
|
+ phy-names ="pciephy";
|
|
+
|
|
+ ranges = <0x01000000 0 0x00000000 0xa0200000 0 0x00100000>,
|
|
+ <0x02000000 0 0xa0300000 0xa0300000 0 0x10000000>;
|
|
+
|
|
+ msi-map = <0x0 &v2m0 0x0 0xff8>;
|
|
+
|
|
+ interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
|
|
+ interrupt-names = "msi0",
|
|
+ "msi1",
|
|
+ "msi2",
|
|
+ "msi3",
|
|
+ "msi4",
|
|
+ "msi5",
|
|
+ "msi6",
|
|
+ "msi7",
|
|
+ "global";
|
|
+
|
|
+ #interrupt-cells = <1>;
|
|
+ interrupt-map-mask = <0 0 0 0x7>;
|
|
+ interrupt-map = <0 0 0 1 &intc 0 0 75 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <0 0 0 2 &intc 0 0 78 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <0 0 0 3 &intc 0 0 79 IRQ_TYPE_LEVEL_HIGH>,
|
|
+ <0 0 0 4 &intc 0 0 83 IRQ_TYPE_LEVEL_HIGH>;
|
|
+
|
|
+ clocks = <&gcc GCC_SYS_NOC_PCIE0_AXI_CLK>,
|
|
+ <&gcc GCC_PCIE0_AXI_M_CLK>,
|
|
+ <&gcc GCC_PCIE0_AXI_S_CLK>,
|
|
+ <&gcc GCC_PCIE0_AHB_CLK>,
|
|
+ <&gcc GCC_PCIE0_AUX_CLK>,
|
|
+ <&gcc GCC_PCIE0_AXI_S_BRIDGE_CLK>;
|
|
+ clock-names = "iface",
|
|
+ "axi_m",
|
|
+ "axi_s",
|
|
+ "ahb",
|
|
+ "aux",
|
|
+ "axi_bridge";
|
|
+
|
|
+ resets = <&gcc GCC_PCIE0_PIPE_ARES>,
|
|
+ <&gcc GCC_PCIE0_SLEEP_ARES>,
|
|
+ <&gcc GCC_PCIE0_CORE_STICKY_ARES>,
|
|
+ <&gcc GCC_PCIE0_AXI_MASTER_ARES>,
|
|
+ <&gcc GCC_PCIE0_AXI_SLAVE_ARES>,
|
|
+ <&gcc GCC_PCIE0_AHB_ARES>,
|
|
+ <&gcc GCC_PCIE0_AXI_MASTER_STICKY_ARES>,
|
|
+ <&gcc GCC_PCIE0_AXI_SLAVE_STICKY_ARES>;
|
|
+ reset-names = "pipe",
|
|
+ "sleep",
|
|
+ "sticky",
|
|
+ "axi_m",
|
|
+ "axi_s",
|
|
+ "ahb",
|
|
+ "axi_m_sticky",
|
|
+ "axi_s_sticky";
|
|
+
|
|
+ status = "disabled";
|
|
+
|
|
+ pcie@0 {
|
|
+ device_type = "pci";
|
|
+ reg = <0x0 0x0 0x0 0x0 0x0>;
|
|
+ bus-range = <0x01 0xff>;
|
|
+
|
|
+ #address-cells = <3>;
|
|
+ #size-cells = <2>;
|
|
+ ranges;
|
|
+ };
|
|
+ };
|
|
};
|
|
|
|
thermal-zones {
|