From nobody Mon Apr 6 23:46:16 2026 Received: from mxout70.expurgate.net (mxout70.expurgate.net [91.198.224.70]) (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 C2C5136655E for ; Tue, 17 Mar 2026 10:31:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.198.224.70 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773743463; cv=none; b=iB2FK17z5oElZbVBv/2lM/SxnQYYek4K4xM/4Sdu2Bksgef2ge32hglTvHVRwkBF35cbTcb3GqcrXCTw3VR6ckxGxTbTvNRYHSzTQ9Zmq3+2gKeiMvsuuuT3KDrUd4JBDqyzwLfuruAhqLLN/QiwhdAfRwRRZGJd4vTAkDQsWGo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773743463; c=relaxed/simple; bh=x0G6kbp3HPUk+Ad9f2NmimHwiVEP6L9O7uku31wgrpk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:Cc; b=Y4bZRJMbbPoNYkYtPetbYloE14Hy+ayHtDSvspzCbTV7NXAULwbLey1byoKAlfpt7p/TPvEjpByMhFgEffZTNoFiUZvWjljQ45gDVztGaRSF+8Md6kFEOkB+LEErgdtsYdU6foK5J/ZoKQ2c8C+xfBohHrtndh8idh7HLhlfHVY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=dev.tdt.de; spf=pass smtp.mailfrom=dev.tdt.de; dkim=temperror (0-bit key) header.d=dev.tdt.de header.i=@dev.tdt.de header.b=kpK5HHp0; arc=none smtp.client-ip=91.198.224.70 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=dev.tdt.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=dev.tdt.de Authentication-Results: smtp.subspace.kernel.org; dkim=temperror (0-bit key) header.d=dev.tdt.de header.i=@dev.tdt.de header.b="kpK5HHp0" Received: from [194.37.255.9] (helo=mxout.expurgate.net) by relay.expurgate.net with smtp (Exim 4.92) (envelope-from ) id 1w2RQC-00C6xZ-Fk; Tue, 17 Mar 2026 11:13:08 +0100 Received: from [195.243.126.94] (helo=securemail.tdt.de) by relay.expurgate.net with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1w2RQB-004Sa5-H4; Tue, 17 Mar 2026 11:13:07 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dev.tdt.de; s=z1-selector1; t=1773742387; bh=zg7zDCV4smsRlNBf4AysL3MRNisHZBZ6g50pqPBg2Cc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=kpK5HHp0ZRWnffKtIEVl4U7riPagMcVn6Seqd/a9fZ71MYWn3U4jzXa1AUWVVlURD 8alSGb+BZSqbgCgq22p8ihX8Vjgt8izWMU+1iigJtD1HZYzHMhN6I3rbJ2c3iaTjLn GHK5MBrXBWFpS7dzMvkNrxWz3KiDw85XfNUumTQJHlYrgC4iQWpcoolS4M5X1Ki9N6 1bgFdS4nfz6pyrzN6rrepw763kgWDStOKaWikGpVk4P2alTtw+s47ZX1UISQ+qJCZY qwug9z61V9UeqXkjifEJWuvzGWCZMLzsszXkk2vqVlcEKGKjF4Wbt/hI5ZH6Wud1Ws s2sg7Kv95JWpA== Received: from securemail.tdt.de (localhost [127.0.0.1]) by securemail.tdt.de (Postfix) with ESMTP id EA11A240036; Tue, 17 Mar 2026 11:13:06 +0100 (CET) Received: from mail.dev.tdt.de (unknown [10.2.4.42]) by securemail.tdt.de (Postfix) with ESMTP id D33C9240042; Tue, 17 Mar 2026 11:13:06 +0100 (CET) Received: from [10.2.3.40] (unknown [10.2.3.40]) by mail.dev.tdt.de (Postfix) with ESMTPSA id B927B237A2; Tue, 17 Mar 2026 11:13:06 +0100 (CET) From: Florian Eckert Date: Tue, 17 Mar 2026 11:12:49 +0100 Subject: [PATCH 1/5] PCI: intel-gw: Move interrupt enable to own function Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: <20260317-pcie-intel-gw-v1-1-7fe13726ad4f@dev.tdt.de> References: <20260317-pcie-intel-gw-v1-0-7fe13726ad4f@dev.tdt.de> In-Reply-To: <20260317-pcie-intel-gw-v1-0-7fe13726ad4f@dev.tdt.de> To: Chuanhua Lei , Lorenzo Pieralisi , =?utf-8?Q?Krzysztof_Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , Bjorn Helgaas , Johan Hovold , Sajid Dalvi , Ajay Agarwal Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Florian Eckert X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1773742386; l=1433; i=fe@dev.tdt.de; s=20260205; h=from:subject:message-id; bh=x0G6kbp3HPUk+Ad9f2NmimHwiVEP6L9O7uku31wgrpk=; b=lc0Wvl8sgOs/PsbxjJyrN1Y3aozSx5CPTx8DLq93DyQRSGetDxaL0vAjQyymOoMWZHFTX4nqS zew5Rr1x3MeDsCPNony/5UrTN/+RhgTDn1hakTj+oJc3La/mRjWT9KP X-Developer-Key: i=fe@dev.tdt.de; a=ed25519; pk=q7Pvv3Au2sAVRhBz5UF7ZqUPNxUwXQ78Jdqu8E6Negk= X-purgate-ID: 151534::1773742388-EF518769-1310CEAB/0/0 X-purgate-type: clean X-purgate: clean To improve the readability of the code, move the interrupt enable instructions to a separate function. That is already done for the disable interrupt instruction. Signed-off-by: Florian Eckert --- drivers/pci/controller/dwc/pcie-intel-gw.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/drivers/pci/controller/dwc/pcie-intel-gw.c b/drivers/pci/contr= oller/dwc/pcie-intel-gw.c index c21906eced61896c8a8307dbd6b72d229f9a5c5f..3a85bd0ef1b7f9414ce19fe56d8= 2a78e34e9b648 100644 --- a/drivers/pci/controller/dwc/pcie-intel-gw.c +++ b/drivers/pci/controller/dwc/pcie-intel-gw.c @@ -196,6 +196,13 @@ static void intel_pcie_device_rst_deassert(struct inte= l_pcie *pcie) gpiod_set_value_cansleep(pcie->reset_gpio, 0); } =20 +static void intel_pcie_core_irq_enable(struct intel_pcie *pcie) +{ + pcie_app_wr(pcie, PCIE_APP_IRNEN, 0); + pcie_app_wr(pcie, PCIE_APP_IRNCR, PCIE_APP_IRN_INT); + pcie_app_wr(pcie, PCIE_APP_IRNEN, PCIE_APP_IRN_INT); +} + static void intel_pcie_core_irq_disable(struct intel_pcie *pcie) { pcie_app_wr(pcie, PCIE_APP_IRNEN, 0); @@ -317,9 +324,7 @@ static int intel_pcie_host_setup(struct intel_pcie *pci= e) if (ret) goto app_init_err; =20 - /* Enable integrated interrupts */ - pcie_app_wr_mask(pcie, PCIE_APP_IRNEN, PCIE_APP_IRN_INT, - PCIE_APP_IRN_INT); + intel_pcie_core_irq_enable(pcie); =20 return 0; =20 --=20 2.47.3 From nobody Mon Apr 6 23:46:16 2026 Received: from mxout70.expurgate.net (mxout70.expurgate.net [91.198.224.70]) (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 E81813A6B79 for ; Tue, 17 Mar 2026 10:30:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.198.224.70 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773743440; cv=none; b=ZhXmAphZdebzVNUEaiiYmHRA+Kv5/nYE8pdWJFsyt01REB6n5rm4jONJ0YoyjxKhWUilKA5z97/0DocOe3qvC6SbM0K2H/Is6saNDx8JnhgyTiPGX2NPXsp9E2EIEkznH0liTz2ST34pm8maqA8mbER6g14U0qBms8/7RBV+jEo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773743440; c=relaxed/simple; bh=/5XdcWs9Sna5pLSadXumBpJ0yehC4Lc92ylmU89t9Zg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:Cc; b=lqpGpO1431b8ObfJcT/hF3jeo2LEY3iFojKf2n+lotfQaloXI2gh/GQJh50bo3dFmFQ8O03DpzCTz3EI+hxDk8x76junFglas7nAEnCuwsOdDhP2rv03adKnvRi/FDvkU6vsTN71ZzVSX+JHBSgooG9tXxUpW3QOK3mX1hnCAk0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=dev.tdt.de; spf=pass smtp.mailfrom=dev.tdt.de; dkim=temperror (0-bit key) header.d=dev.tdt.de header.i=@dev.tdt.de header.b=Ti2FtIcC; arc=none smtp.client-ip=91.198.224.70 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=dev.tdt.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=dev.tdt.de Authentication-Results: smtp.subspace.kernel.org; dkim=temperror (0-bit key) header.d=dev.tdt.de header.i=@dev.tdt.de header.b="Ti2FtIcC" Received: from [194.37.255.9] (helo=mxout.expurgate.net) by relay.expurgate.net with smtp (Exim 4.92) (envelope-from ) id 1w2RQC-00C6xh-Iv; Tue, 17 Mar 2026 11:13:08 +0100 Received: from [195.243.126.94] (helo=securemail.tdt.de) by relay.expurgate.net with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1w2RQB-00C6wI-PX; Tue, 17 Mar 2026 11:13:07 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dev.tdt.de; s=z1-selector1; t=1773742387; bh=6pEAYrxZ4cSiwtyBA08AwFeNdb6zPp3VxBpv8lwPFAo=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Ti2FtIcCOY1cBC+9gzS+sfCsRNHBWlQsi4quLTRV+8V3rJQhCNgRr6wSbXxVxQ7Um F8AkjfK1MLk01zk4nnInSZcWqTwudcH4VlOvY28TIbKLAR5Ykal5E+bTjv5wk8XwS3 K+aHSxdjr9kd/3FUHVG7bvQSm34GosjJGikW0m9vQnadnM13n+5bLFZXqvgJsIjeyK CTw4t8kZL8a+XmWhqrn3SkKOeZ9VdhSb7do/A/NX33d8v6oe6+028kdaVf8FsATDFa gX53Ggo77kAKTw4Ak6WEsSSlW4bEcdcPRTQJ13RNa7l8c6+YBS85+Rgk0mr0tNgSRR OIzwXBknRsEtg== Received: from securemail.tdt.de (localhost [127.0.0.1]) by securemail.tdt.de (Postfix) with ESMTP id 0D0C224004E; Tue, 17 Mar 2026 11:13:07 +0100 (CET) Received: from mail.dev.tdt.de (unknown [10.2.4.42]) by securemail.tdt.de (Postfix) with ESMTP id EEFF8240046; Tue, 17 Mar 2026 11:13:06 +0100 (CET) Received: from [10.2.3.40] (unknown [10.2.3.40]) by mail.dev.tdt.de (Postfix) with ESMTPSA id D1DD923715; Tue, 17 Mar 2026 11:13:06 +0100 (CET) From: Florian Eckert Date: Tue, 17 Mar 2026 11:12:50 +0100 Subject: [PATCH 2/5] PCI: intel-gw: Enable clock before phy init Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: <20260317-pcie-intel-gw-v1-2-7fe13726ad4f@dev.tdt.de> References: <20260317-pcie-intel-gw-v1-0-7fe13726ad4f@dev.tdt.de> In-Reply-To: <20260317-pcie-intel-gw-v1-0-7fe13726ad4f@dev.tdt.de> To: Chuanhua Lei , Lorenzo Pieralisi , =?utf-8?Q?Krzysztof_Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , Bjorn Helgaas , Johan Hovold , Sajid Dalvi , Ajay Agarwal Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Florian Eckert X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1773742386; l=1956; i=fe@dev.tdt.de; s=20260205; h=from:subject:message-id; bh=/5XdcWs9Sna5pLSadXumBpJ0yehC4Lc92ylmU89t9Zg=; b=GInB9Gd/tgUDu/RPQSGxvyI5O8y2tvkJSeul+z+JaRKzPGXkikhdXO7ixq6sXauXseKK49pax SZmdFJSTD5cCMYxgCurMPUaLBYenEanftSAhmnOat+Md2br1bs6t3Ux X-Developer-Key: i=fe@dev.tdt.de; a=ed25519; pk=q7Pvv3Au2sAVRhBz5UF7ZqUPNxUwXQ78Jdqu8E6Negk= X-purgate-ID: 151534::1773742388-EE51E769-217C8A5A/0/0 X-purgate: clean X-purgate-type: clean To ensure that the boot sequence is correct, the dwc pcie core clock must be switched on before phy init call. This changes are based on patched kernel sources of the MaxLinear SDK, which can be found at https://github.com/maxlinear/linux Signed-off-by: Florian Eckert --- drivers/pci/controller/dwc/pcie-intel-gw.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/pci/controller/dwc/pcie-intel-gw.c b/drivers/pci/contr= oller/dwc/pcie-intel-gw.c index 3a85bd0ef1b7f9414ce19fe56d82a78e34e9b648..6110a8adb8732dbbd5e9e2db68a= 0606ccf032ae1 100644 --- a/drivers/pci/controller/dwc/pcie-intel-gw.c +++ b/drivers/pci/controller/dwc/pcie-intel-gw.c @@ -292,13 +292,9 @@ static int intel_pcie_host_setup(struct intel_pcie *pc= ie) =20 intel_pcie_core_rst_assert(pcie); intel_pcie_device_rst_assert(pcie); - - ret =3D phy_init(pcie->phy); - if (ret) - return ret; - intel_pcie_core_rst_deassert(pcie); =20 + /* Controller clock must be provided earlier than PHY */ ret =3D clk_prepare_enable(pcie->core_clk); if (ret) { dev_err(pcie->pci.dev, "Core clock enable failed: %d\n", ret); @@ -307,13 +303,17 @@ static int intel_pcie_host_setup(struct intel_pcie *p= cie) =20 pci->atu_base =3D pci->dbi_base + 0xC0000; =20 + ret =3D phy_init(pcie->phy); + if (ret) + goto phy_err; + intel_pcie_ltssm_disable(pcie); intel_pcie_link_setup(pcie); intel_pcie_init_n_fts(pci); =20 ret =3D dw_pcie_setup_rc(&pci->pp); if (ret) - goto app_init_err; + goto phy_err; =20 dw_pcie_upconfig_setup(pci); =20 @@ -322,13 +322,13 @@ static int intel_pcie_host_setup(struct intel_pcie *p= cie) =20 ret =3D dw_pcie_wait_for_link(pci); if (ret) - goto app_init_err; + goto phy_err; =20 intel_pcie_core_irq_enable(pcie); =20 return 0; =20 -app_init_err: +phy_err: clk_disable_unprepare(pcie->core_clk); clk_err: intel_pcie_core_rst_assert(pcie); --=20 2.47.3 From nobody Mon Apr 6 23:46:16 2026 Received: from mxout70.expurgate.net (mxout70.expurgate.net [91.198.224.70]) (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 6E31C3A6F0C for ; Tue, 17 Mar 2026 10:30:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.198.224.70 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773743427; cv=none; b=ChrySmsO3m6ArcNXtpVHSiFisUdbfTcnbFs6GKLMRwK3jd9XtUajHFtburzwIz7Aw1MPAJGfObjhoyiHXttKE+sP0zSo7JDFVNaRT9EKDqaOwVGIrWycrcvoTGMJeB2GVTbOdSwZJer5EayqNvi0obS+CajqI8GDUEhhJlu8gbo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773743427; c=relaxed/simple; bh=xHvZaQnIxQuQrsMBH+rgNaS/khHlKZ3A5ns3b/goJac=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:Cc; b=rAoAT64x5bhMXHIlRteIPICnyVCrtTcJJ6gIPyAFvVld3r3ka5tbb+RFGWX0w9GMGp+/b7VrZx6xHViWgXt8NlFZP3+PJzBVvNysg5M3keHSHu84agFSOgUIAX/0b1/CQg13/laR8masSHn3CWRuvZ3b3Crp35s4EZEnyDRA4Zc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=dev.tdt.de; spf=pass smtp.mailfrom=dev.tdt.de; dkim=temperror (0-bit key) header.d=dev.tdt.de header.i=@dev.tdt.de header.b=Q3BX2dRF; arc=none smtp.client-ip=91.198.224.70 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=dev.tdt.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=dev.tdt.de Authentication-Results: smtp.subspace.kernel.org; dkim=temperror (0-bit key) header.d=dev.tdt.de header.i=@dev.tdt.de header.b="Q3BX2dRF" Received: from [194.37.255.9] (helo=mxout.expurgate.net) by relay.expurgate.net with smtp (Exim 4.92) (envelope-from ) id 1w2RQC-00C6y6-N7; Tue, 17 Mar 2026 11:13:08 +0100 Received: from [195.243.126.94] (helo=securemail.tdt.de) by relay.expurgate.net with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1w2RQB-00E6nz-Sk; Tue, 17 Mar 2026 11:13:07 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dev.tdt.de; s=z1-selector1; t=1773742387; bh=d3JsyvacRp05aVA8XXv2SfPeY76Tg+WNbGdXggM6Igo=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Q3BX2dRF9EZsCaHcYoZ7w1y6sA4CMfcUloiApS2sC+sxZj2sBSPDfcfAutN5tMuL6 LoSm+tZRxfHxzGcnxNmTpbNGRKVD+LrCjWa8eZs6wdjYgPFqNAhip3S8obszF32Phh ZT1T3w3PDXgdJi02uFnx27J9UakZ7i/vlGuy8C8xVacI9/kq7+QAZMs9Iu8y4Lf+gX ekSg24/iMiABs5amguI9C7Yz5ZbrOotC9JNljeQuVvKfr1YLG7ZIj0Ev+6xfiFowFa Vpoz7ru3ffDIx/m3Yf0GmlKhPOFj6g1Ag5S6udwh0gHTqPtPsRDCcJacLTynqUB/UO 1oaS0KaD/yfuw== Received: from securemail.tdt.de (localhost [127.0.0.1]) by securemail.tdt.de (Postfix) with ESMTP id 28257240046; Tue, 17 Mar 2026 11:13:07 +0100 (CET) Received: from mail.dev.tdt.de (unknown [10.2.4.42]) by securemail.tdt.de (Postfix) with ESMTP id 1680F24004F; Tue, 17 Mar 2026 11:13:07 +0100 (CET) Received: from [10.2.3.40] (unknown [10.2.3.40]) by mail.dev.tdt.de (Postfix) with ESMTPSA id ED2D4237A2; Tue, 17 Mar 2026 11:13:06 +0100 (CET) From: Florian Eckert Date: Tue, 17 Mar 2026 11:12:51 +0100 Subject: [PATCH 3/5] PCI: intel-gw: Add start_link callback function Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: <20260317-pcie-intel-gw-v1-3-7fe13726ad4f@dev.tdt.de> References: <20260317-pcie-intel-gw-v1-0-7fe13726ad4f@dev.tdt.de> In-Reply-To: <20260317-pcie-intel-gw-v1-0-7fe13726ad4f@dev.tdt.de> To: Chuanhua Lei , Lorenzo Pieralisi , =?utf-8?Q?Krzysztof_Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , Bjorn Helgaas , Johan Hovold , Sajid Dalvi , Ajay Agarwal Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Florian Eckert X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1773742386; l=2024; i=fe@dev.tdt.de; s=20260205; h=from:subject:message-id; bh=xHvZaQnIxQuQrsMBH+rgNaS/khHlKZ3A5ns3b/goJac=; b=OmCnVkGoDtIzcMHc2vawo5oqcRpmF+OUmjhOr+as1jhioLj/a2fmmtjSAId9xpHuFdkbO+lwX x8X1mcIZe4KAodBnX8x3QPvBv+3OOXi50KsK6j5H0gSsDK9J0ppphKO X-Developer-Key: i=fe@dev.tdt.de; a=ed25519; pk=q7Pvv3Au2sAVRhBz5UF7ZqUPNxUwXQ78Jdqu8E6Negk= X-purgate: clean X-purgate-type: clean X-purgate-ID: 151534::1773742388-E5D1D769-06950752/0/0 The pcie-intel-gw driver has no start_link callback function. This commit adds the missing callback function so that the driver works again and does not abort with an error during probing. Fixes: c5097b9869a1 ("Revert "PCI: dwc: Wait for link up only if link is st= arted"") Fixes: da56a1bfbab5 ("PCI: dwc: Wait for link up only if link is started") Signed-off-by: Florian Eckert --- drivers/pci/controller/dwc/pcie-intel-gw.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/drivers/pci/controller/dwc/pcie-intel-gw.c b/drivers/pci/contr= oller/dwc/pcie-intel-gw.c index 6110a8adb8732dbbd5e9e2db68a0606ccf032ae1..6bd25f8da605032bfdb97596fb3= a1f6a03e88bfc 100644 --- a/drivers/pci/controller/dwc/pcie-intel-gw.c +++ b/drivers/pci/controller/dwc/pcie-intel-gw.c @@ -285,6 +285,16 @@ static void intel_pcie_turn_off(struct intel_pcie *pci= e) pcie_rc_cfg_wr_mask(pcie, PCI_COMMAND, PCI_COMMAND_MEMORY, 0); } =20 +static int intel_pcie_start_link(struct dw_pcie *pci) +{ + struct intel_pcie *pcie =3D dev_get_drvdata(pci->dev); + + intel_pcie_device_rst_deassert(pcie); + intel_pcie_ltssm_enable(pcie); + + return 0; +} + static int intel_pcie_host_setup(struct intel_pcie *pcie) { int ret; @@ -310,20 +320,8 @@ static int intel_pcie_host_setup(struct intel_pcie *pc= ie) intel_pcie_ltssm_disable(pcie); intel_pcie_link_setup(pcie); intel_pcie_init_n_fts(pci); - - ret =3D dw_pcie_setup_rc(&pci->pp); - if (ret) - goto phy_err; - dw_pcie_upconfig_setup(pci); =20 - intel_pcie_device_rst_deassert(pcie); - intel_pcie_ltssm_enable(pcie); - - ret =3D dw_pcie_wait_for_link(pci); - if (ret) - goto phy_err; - intel_pcie_core_irq_enable(pcie); =20 return 0; @@ -386,6 +384,7 @@ static int intel_pcie_rc_init(struct dw_pcie_rp *pp) } =20 static const struct dw_pcie_ops intel_pcie_ops =3D { + .start_link =3D intel_pcie_start_link, }; =20 static const struct dw_pcie_host_ops intel_pcie_dw_ops =3D { --=20 2.47.3 From nobody Mon Apr 6 23:46:16 2026 Received: from mxout70.expurgate.net (mxout70.expurgate.net [91.198.224.70]) (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 CF2C63A6EEC for ; Tue, 17 Mar 2026 10:30:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.198.224.70 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773743424; cv=none; b=K2O4CFMtUaPRcuzmP9rLjCZ1v+LXruzZpsCiD3Bd5t9YPxi5cnfY9AnYZLAlmwb1/F5K2SqEDldqxpWKBtST0jTxGiuKjl/6VXvpgJL8vqM6iCdfNIFOiATcaouyniYMFdnvzmA/CwRavz+dSfap8TzrTXB1FvDZWdOC3ekf57E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773743424; c=relaxed/simple; bh=kmkLIZHjhUEmlXZEil2V+s0kDT0h08LGh+sl+iDQ3Mg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:Cc; b=E1Fsl28l04McW1FxccScdC/PFS+nVTp1mnlJr4tpf7GPIr1+K84+nXL8I6B549QUH7YxGDdksGI6zT0mCieFHLjPUbWWY+n4/LNvmdi1jzW7aTKaxHpkVEmESQ+nXEGFzCpfhLrTaEEHcdRZgyAGhrcXLjz3yCYuYt+EWvIbSuc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=dev.tdt.de; spf=pass smtp.mailfrom=dev.tdt.de; dkim=temperror (0-bit key) header.d=dev.tdt.de header.i=@dev.tdt.de header.b=hLI9X+Jl; arc=none smtp.client-ip=91.198.224.70 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=dev.tdt.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=dev.tdt.de Authentication-Results: smtp.subspace.kernel.org; dkim=temperror (0-bit key) header.d=dev.tdt.de header.i=@dev.tdt.de header.b="hLI9X+Jl" Received: from [194.37.255.9] (helo=mxout.expurgate.net) by relay.expurgate.net with smtp (Exim 4.92) (envelope-from ) id 1w2RQC-00C6xt-L0; Tue, 17 Mar 2026 11:13:08 +0100 Received: from [195.243.126.94] (helo=securemail.tdt.de) by relay.expurgate.net with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1w2RQB-007eQU-S4; Tue, 17 Mar 2026 11:13:07 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dev.tdt.de; s=z1-selector1; t=1773742387; bh=omyRy/ftDGmf0KnvkIOI4hdXpwxtXhtFfVSJa7RPKHk=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=hLI9X+JlnsXv+d2p0R7dymvTwufZm0vPLWfxPjYUZbY5GQpsCkhPjdhy3K37HI1dM 3Dwhrn3enwTENUaJ+PnhFqbjhYYxupMYr9PdmkKtqCddJcg20fQDmq4rDNWLo/3JLA vOmsC9o3Y+M93KRwdOZI1cw4vcmmnzREn6qDF3CmiyXxB6hGwLveZnW35XnL4awFSF ormY0jLSrfqsv5C40fN7sbOnN+aSYidGZ6QnGskr2S+ebwMwm1lfF4bh1FiCwL2odR jlr3CwBUWdFm6BXhubtfM3oJsmJ0xca3UhpLvp0gXsfVtZ4Pt+tcBijediMgi4XA02 oUlRtAyr+Ag4w== Received: from securemail.tdt.de (localhost [127.0.0.1]) by securemail.tdt.de (Postfix) with ESMTP id 3816C240053; Tue, 17 Mar 2026 11:13:07 +0100 (CET) Received: from mail.dev.tdt.de (unknown [10.2.4.42]) by securemail.tdt.de (Postfix) with ESMTP id 2E2D1240050; Tue, 17 Mar 2026 11:13:07 +0100 (CET) Received: from [10.2.3.40] (unknown [10.2.3.40]) by mail.dev.tdt.de (Postfix) with ESMTPSA id 1538623715; Tue, 17 Mar 2026 11:13:07 +0100 (CET) From: Florian Eckert Date: Tue, 17 Mar 2026 11:12:52 +0100 Subject: [PATCH 4/5] PCI: intel-gw: Remove atu base assignment Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: <20260317-pcie-intel-gw-v1-4-7fe13726ad4f@dev.tdt.de> References: <20260317-pcie-intel-gw-v1-0-7fe13726ad4f@dev.tdt.de> In-Reply-To: <20260317-pcie-intel-gw-v1-0-7fe13726ad4f@dev.tdt.de> To: Chuanhua Lei , Lorenzo Pieralisi , =?utf-8?Q?Krzysztof_Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , Bjorn Helgaas , Johan Hovold , Sajid Dalvi , Ajay Agarwal Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Florian Eckert X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1773742386; l=1254; i=fe@dev.tdt.de; s=20260205; h=from:subject:message-id; bh=kmkLIZHjhUEmlXZEil2V+s0kDT0h08LGh+sl+iDQ3Mg=; b=8hTae6K5juxr2UzLW8L/d1DqAAqbJlDrGoY3NYCB1f2a+t5uZFx7gTkBrUgHEe4pGnpeQiwCq dZ7vnXxqxXcDQAUSYW44nF89LNQKkjOjmDfzOZWUs1jH+YDH+XvV7LN X-Developer-Key: i=fe@dev.tdt.de; a=ed25519; pk=q7Pvv3Au2sAVRhBz5UF7ZqUPNxUwXQ78Jdqu8E6Negk= X-purgate-ID: 151534::1773742388-05D1D769-8771A1E7/0/0 X-purgate-type: clean X-purgate: clean In the current implementation, only one PCIe bridge is recognised. This change removes the assignment of the ATU base address during host setup. Instead, the ATU base address is read from the device tree. To do this, the 'atu' range of the DTS entry must be changed for PCIe. Old DTS entry for PCIe: reg =3D <0xd1000000 0x1000>, <0xd3000000 0x20000>, <0xd0c41000.0x1000>; reg-names =3D "dbi", "config", "app"; New DTS entry for PCIe reg =3D <0xd1000000 0x1000>, <0xd10c0000 0x1000>, <0xd3000000 0x20000>, <0xd0c41000.0x1000>; reg-names =3D "dbi", "atu", "config", "app"; Signed-off-by: Florian Eckert --- drivers/pci/controller/dwc/pcie-intel-gw.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/pci/controller/dwc/pcie-intel-gw.c b/drivers/pci/contr= oller/dwc/pcie-intel-gw.c index 6bd25f8da605032bfdb97596fb3a1f6a03e88bfc..cec972d5aa9107d4708338bd734= 9415a31f0e688 100644 --- a/drivers/pci/controller/dwc/pcie-intel-gw.c +++ b/drivers/pci/controller/dwc/pcie-intel-gw.c @@ -311,8 +311,6 @@ static int intel_pcie_host_setup(struct intel_pcie *pci= e) goto clk_err; } =20 - pci->atu_base =3D pci->dbi_base + 0xC0000; - ret =3D phy_init(pcie->phy); if (ret) goto phy_err; --=20 2.47.3 From nobody Mon Apr 6 23:46:16 2026 Received: from mxout70.expurgate.net (mxout70.expurgate.net [91.198.224.70]) (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 8BFC73A7596 for ; Tue, 17 Mar 2026 10:30:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.198.224.70 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773743430; cv=none; b=Je3ngzqLGMIIPqPYT5mjTzGN2E5vE+jQSXbeh2NFGVLoz11N/WKlJfbQ6E5UlKZiz5tIIcJ3pHYN1DOxF+oymh0StTIzNg14gv5TmkkrSUx90eXzxvjQZPR7SBV7+WH4h2fo2YFFvAgwwiKfzqJvhDF3EYgRZ27DeCCQg9k5M4c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773743430; c=relaxed/simple; bh=gMsrh+FO+Tt5RulC7LZYkBEK9IJgRRS3Rt+UL63UVS0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:Cc; b=ML8gCOPULXAyoazUHMRi8kGLUWGjaNfsaUOQXH9JMftYzzESBDz7YJTvB+ndbPrnAGe+T/jZJKQFwsggBP8QSbbLPxEeKDOxIBxevgvMu+aKWVdMDTsjHk7g+bKqkojt3+jCULUyhGvmgvcp2RyL95NZCDU3VTVW92ZOBv0wy2Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=dev.tdt.de; spf=pass smtp.mailfrom=dev.tdt.de; dkim=temperror (0-bit key) header.d=dev.tdt.de header.i=@dev.tdt.de header.b=WmkIUISM; arc=none smtp.client-ip=91.198.224.70 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=dev.tdt.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=dev.tdt.de Authentication-Results: smtp.subspace.kernel.org; dkim=temperror (0-bit key) header.d=dev.tdt.de header.i=@dev.tdt.de header.b="WmkIUISM" Received: from [194.37.255.9] (helo=mxout.expurgate.net) by relay.expurgate.net with smtp (Exim 4.92) (envelope-from ) id 1w2RQC-00C6yN-OS; Tue, 17 Mar 2026 11:13:08 +0100 Received: from [195.243.126.94] (helo=securemail.tdt.de) by relay.expurgate.net with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1w2RQB-003cGX-Vu; Tue, 17 Mar 2026 11:13:08 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dev.tdt.de; s=z1-selector1; t=1773742387; bh=krlCo0bP9NXhSvCloj8W+cXNqpMUNFunGeueOA+AqwQ=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=WmkIUISMR79UTrZaOGa/3v9lUs5ImAimz2E6XcA+utut86r4IHl1v/EGAzVMvMSZK OYMFNhu9tRthqZXo7Y62WGTWftsghe8h4BXEf5jVBctFMFQbilB4waRFA6OixQOeCL zQbu9eUpoMooEzJuuZgyJEQcCgzLeSgHxBcjV9+WVyrERGeDQRe3IOxBbgb7SRYBEd oUXRE/NPodXq6oUjGRO+CSkpFcPiVPLVLIy3DPDpuhvxYUGP5p2uRx5U2+jIooTYty oK5DLXTBbsuJyLfvQDMOAzfnGRJijkEaHgDIGdt2jXfuZoESZ6w6EyqWvmnK6lGBcO oQfKr08wmyPNg== Received: from securemail.tdt.de (localhost [127.0.0.1]) by securemail.tdt.de (Postfix) with ESMTP id 4C921240055; Tue, 17 Mar 2026 11:13:07 +0100 (CET) Received: from mail.dev.tdt.de (unknown [10.2.4.42]) by securemail.tdt.de (Postfix) with ESMTP id 42488240054; Tue, 17 Mar 2026 11:13:07 +0100 (CET) Received: from [10.2.3.40] (unknown [10.2.3.40]) by mail.dev.tdt.de (Postfix) with ESMTPSA id 2CAE3237A2; Tue, 17 Mar 2026 11:13:07 +0100 (CET) From: Florian Eckert Date: Tue, 17 Mar 2026 11:12:53 +0100 Subject: [PATCH 5/5] PCI: intel-gw: Remove unused define Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: <20260317-pcie-intel-gw-v1-5-7fe13726ad4f@dev.tdt.de> References: <20260317-pcie-intel-gw-v1-0-7fe13726ad4f@dev.tdt.de> In-Reply-To: <20260317-pcie-intel-gw-v1-0-7fe13726ad4f@dev.tdt.de> To: Chuanhua Lei , Lorenzo Pieralisi , =?utf-8?Q?Krzysztof_Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , Bjorn Helgaas , Johan Hovold , Sajid Dalvi , Ajay Agarwal Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Florian Eckert X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1773742386; l=814; i=fe@dev.tdt.de; s=20260205; h=from:subject:message-id; bh=gMsrh+FO+Tt5RulC7LZYkBEK9IJgRRS3Rt+UL63UVS0=; b=VlGqPx3Ojh4FA5U3Db+ZsTtTPeeMKFGbUkcQItDlRhWE0ThjwvsmsW+mufckmIJUI/lvtYhYC 4MSoqpNT5m6Adylu+osn6p6HD7gDjdygV4alS5eZavHsJFYOasdX78i X-Developer-Key: i=fe@dev.tdt.de; a=ed25519; pk=q7Pvv3Au2sAVRhBz5UF7ZqUPNxUwXQ78Jdqu8E6Negk= X-purgate: clean X-purgate-type: clean X-purgate-ID: 151534::1773742388-07D19769-50C6B138/0/0 The C preprocessor define 'PCIE_APP_INTX_OFST' is not used in the sources and can therefore be deleted. Signed-off-by: Florian Eckert --- drivers/pci/controller/dwc/pcie-intel-gw.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/pci/controller/dwc/pcie-intel-gw.c b/drivers/pci/contr= oller/dwc/pcie-intel-gw.c index cec972d5aa9107d4708338bd7349415a31f0e688..1a62d4aed9b495d6cfa31f0e1c9= 2f2b4ac6b09f4 100644 --- a/drivers/pci/controller/dwc/pcie-intel-gw.c +++ b/drivers/pci/controller/dwc/pcie-intel-gw.c @@ -47,7 +47,6 @@ #define PCIE_APP_IRN_INTD BIT(16) #define PCIE_APP_IRN_MSG_LTR BIT(18) #define PCIE_APP_IRN_SYS_ERR_RC BIT(29) -#define PCIE_APP_INTX_OFST 12 =20 #define PCIE_APP_IRN_INT \ (PCIE_APP_IRN_AER_REPORT | PCIE_APP_IRN_PME | \ --=20 2.47.3