From nobody Sun Feb 8 20:22:58 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (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 BFD082EC0BF for ; Fri, 9 Jan 2026 07:21:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767943282; cv=none; b=HykN95hqTAfyr//3piN45SefMpm+b2legA7F+ov3997Cou0BJ9qqrZYajYDo826/sMD86cIFG85o/cwWQlUjL2ViA1JHO5j74iBvtCRvMWHvRVgJVg8qBZ/UaHdUdhtInHJ5UzvwLL0UjOrUgDmyAbDK0efa79c88euDGIj4IfQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767943282; c=relaxed/simple; bh=qCZcq4ePhl1M5OCnTIjZBXNlTVq1DHiR6pXLBB27pc4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Lq4lBm5LdVNCLOeGny83gMRjiw2vC6Zj1yz5t9QoCd4Z/b51mgOvr2zsEvm3T6t87ktRD4LPptBMv1TeW0UxDISMgdx/iOmu1TkBbj46Xmy5chuvkUzqYa95OsGXbTl/KSgtCSJ3F80EMcDJqNKxQhIXB3Bqp3N+t1SGHhAixhc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=cRvptH0L; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=A9+sbVEQ; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="cRvptH0L"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="A9+sbVEQ" Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 608NpjXw3727355 for ; Fri, 9 Jan 2026 07:21:20 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= KBmQ3JjkNs0c0gyqtwiCkbDYZXIghaKkt8zCFfC38Yw=; b=cRvptH0LuvCIZSDx VnvmliRwVLOXFc3Oxqnm7MPBygiRJTgvngIvBDNQkcUtOpcMyCt4Iu0RNuBCjFgn r+XERZce5WgltbLC7gpeMxkaiPX1IumruHFgel9eucnqkjp3jskJcTpX9MSikw+V EYzslPwSpvitGSQqQJfibNsGVt302E2Vk8GpWYsNjWWPN28/P/w8Z54iFfgLj49O B8N4gx/MEPyGIWBQiLhhFb65QnetlHiAikpnfh3Iy6XribkkjqDDV6zKfeVoQ13w 1kg213MQIPitU+x39+5vaMhdnnNQ6qWb4KnIzV6Nr+GOf8nb1MAN2EYqzA2xKq9B xEzVsg== Received: from mail-pl1-f199.google.com (mail-pl1-f199.google.com [209.85.214.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bjpmkh2qu-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 09 Jan 2026 07:21:19 +0000 (GMT) Received: by mail-pl1-f199.google.com with SMTP id d9443c01a7336-29f29ae883bso34346295ad.3 for ; Thu, 08 Jan 2026 23:21:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767943279; x=1768548079; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=KBmQ3JjkNs0c0gyqtwiCkbDYZXIghaKkt8zCFfC38Yw=; b=A9+sbVEQuWDoOMJNIknA/NODy5rrGe5cKGjz9xLKsoW1DK9kEeYt5GPg5v3wvGTCxh 1uwsrkUjcg28Muk60HhH061CA6l4ovDSaDs4B5PltucLq+ypqMcRdnW3OP+Xb0kjQP2v 2K4iO9A0mUnGpSgGNlR5jKNVWXF7D69UqjJUfvyBEfkjvANVPNi8Ft4X0CJGljPTWNXJ 2l9UuMakL+vWwXQgE3Cu2fRLFXdSlZHgWrgvpCxQnMs2D6TfxahndTw4pPhmAep85mDG vw0Wu+CSDiOArWgMfqv+nprCgsNG9w+7h0dDIAqlkYVDkkk+sSml0ktQoRjQEnTfsE8F 9Ylw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767943279; x=1768548079; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=KBmQ3JjkNs0c0gyqtwiCkbDYZXIghaKkt8zCFfC38Yw=; b=ZuicgjlFOWiwA7OsM/BUVwQ8poT5/DwnghVt5HzEH+pl6lNk46mTDBWExiJQTxTj1H IEehAYt/70l3UEcljkvDzrZ+u7SmSWqA9Xb8Zsm7l1LDykHe99XFRaQyNjhqqfOyTdXN 08EcoxU0EHlaP18B0CUYOOHFM72CAr8M5XCdrkQvyvKfZ1Nav5IkmkP+defBO9U5ukTl /sxRMPeWdj+UG9LCN8EVvqnRbpaBeJI++wQFmIEId1eVCsv16OCBxQHiK9k5uANGdNSD ozQ4D9rxf3p+Ffsjr8/LcoezKVvP/G5hAFLc9v5TxN6fa7D6NnoLxG7VBXmox8a3GhI9 gJgg== X-Forwarded-Encrypted: i=1; AJvYcCVO5EdJnf7gyFCq+lTnx2fkDNPCLwLVtzMZS0LDNPhdJcsfYA5OPDc3ngIP5xxMjNEkfNRycpvNc5l3r0c=@vger.kernel.org X-Gm-Message-State: AOJu0Yy2siGtwu3dMa2aGcAwYr9wW91pzVPNkp7nN1my/YbotLAYmAT8 KNS0oNvfPRJ0lxQl3yQ9rLsDeg/5KuXDOsZxC5d1xNK5VAGfBpLl4BWKh/3yhRx7Ljw2K+dAwrb G4t0FzSt4UfOJ81z1NOWNpps7bcHxBcFHqQWOUsE3DbuQdEerW0hg7Fp3jHXiLJC1OOQ= X-Gm-Gg: AY/fxX7FIIWC0RXxjiQUjG7lR6gHAvHHlCsvl38l3h4TmQ52+wFLzgXsdWUI5S6viUH mh0dVqhx2m3tw5mOCPejZ0vSGKQaQRHuglGSKXsk6dXOx+qYZl/CUCPPnb6YHgnnoFX3hfpAYGa 610U5PiBe/jtLNJLN6eA1gmZWz008s8rB27bvfNGdMWycRbMvaxNfxKUw1WlLSXK1WO1GFAyBYg 2Zmdoq+RTbGODqESmd0UzopW74tnwz36ZjruEDmVkbO9nbPw5yI80OJBaX9pyRhumPYxAcUz646 AwpAvjKke+cKZYrFViCK7kK5LQV1j2e1QTF5I0aF+azhExxYrFx9siQNmzzRo5wUvTQouIufFHP pK/3aGgFJYmPt5sNdpiDuncmEktWKlMGDJlzskgcShBqd X-Received: by 2002:a05:6a20:728f:b0:366:1992:89a6 with SMTP id adf61e73a8af0-3898f92caa7mr6887743637.9.1767943279212; Thu, 08 Jan 2026 23:21:19 -0800 (PST) X-Google-Smtp-Source: AGHT+IGs6QOa9xeUO4AhsQgCzcZWo5NIQzpXhO95M7HuPd07DAWIleAAX2o3DQHUnSO32As//Hm8iQ== X-Received: by 2002:a05:6a20:728f:b0:366:1992:89a6 with SMTP id adf61e73a8af0-3898f92caa7mr6887727637.9.1767943278706; Thu, 08 Jan 2026 23:21:18 -0800 (PST) Received: from hu-krichai-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-819bb4c85bfsm9510369b3a.30.2026.01.08.23.21.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jan 2026 23:21:18 -0800 (PST) From: Krishna Chaitanya Chundru Date: Fri, 09 Jan 2026 12:51:06 +0530 Subject: [PATCH 1/5] phy: qcom: qmp-pcie: Skip PHY reset if already up 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: <20260109-link_retain-v1-1-7e6782230f4b@oss.qualcomm.com> References: <20260109-link_retain-v1-0-7e6782230f4b@oss.qualcomm.com> In-Reply-To: <20260109-link_retain-v1-0-7e6782230f4b@oss.qualcomm.com> To: Vinod Koul , Neil Armstrong , Philipp Zabel , Jingoo Han , Manivannan Sadhasivam , Lorenzo Pieralisi , =?utf-8?q?Krzysztof_Wilczy=C5=84ski?= , Rob Herring , Bjorn Helgaas Cc: linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, Krishna Chaitanya Chundru X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1767943270; l=2601; i=krishna.chundru@oss.qualcomm.com; s=20230907; h=from:subject:message-id; bh=qCZcq4ePhl1M5OCnTIjZBXNlTVq1DHiR6pXLBB27pc4=; b=YpF4qKbOyrlgyQ4CyawhI7IS6EKsaXBA+4/Z0aFC6PdpPG7zBMYWxMqQZiX4GJyBrsCRqaoDp jKW3/Fu4WofDn1ZfDcK0KrKy+FDO4y/0IUdCB55OBqrI5hbEk22kX1W X-Developer-Key: i=krishna.chundru@oss.qualcomm.com; a=ed25519; pk=10CL2pdAKFyzyOHbfSWHCD0X0my7CXxj8gJScmn1FAg= X-Authority-Analysis: v=2.4 cv=YNiSCBGx c=1 sm=1 tr=0 ts=6960ac6f cx=c_pps a=JL+w9abYAAE89/QcEU+0QA==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=HRk0seaB8xIaapVIQOkA:9 a=QEXdDO2ut3YA:10 a=324X-CrmTo6CU4MGRt3R:22 X-Proofpoint-GUID: GUuPEZCpVabJ36xkJZdwWsu-elKJTg5P X-Proofpoint-ORIG-GUID: GUuPEZCpVabJ36xkJZdwWsu-elKJTg5P X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTA5MDA1MCBTYWx0ZWRfX/v5PZfN/HJ2r LDdf67DaM6Humm4wzUXw7WmwK6OoMIbbu5J4ZrD0NnZxWDf0JwC2+eeWyyhQGi0o0WoyO9Be2DB P3BceOUahgs8Xtc3N93xCm6YQfgf/ftcsx1h6sk3uuLYPOk5N5pXE+7Ou5H+1RgxgtsldQvOIX8 +K7cLsUGP7e4lqQQRklfbEALmq24iBvr9ycW7QK1usK8/gjoEO2Dxxwzzsm5tTkq6FnMOJ8tZeG BnjusonH3WowKNJPELByKYGoks92d02qu273a3Y+p4UmNzIfBNLgectLAjzxvgbdnstTWJ1ubnO tF9gfco766KDEP2A1isnGgZza7c6TDVE0at7E2BZi3axXUHNMVwVyyD45GWUls1UpMA+z1wfgSM HdkFjJvo13GMOtDThwieXHDDJ5ejwP8Uuza6gyJDLXp6UwBDoDc2VcVuVi8Jgb7hdFLcnRDseCW 1JZzCjsNq9z0cK/rRhQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-09_02,2026-01-08_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 phishscore=0 suspectscore=0 impostorscore=0 adultscore=0 spamscore=0 lowpriorityscore=0 malwarescore=0 bulkscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601090050 If the bootloader has already powered up the PCIe PHY, doing a full reset and waiting for it to come up again slows down boot time. Add a check for PHY status and skip the reset steps when the PHY is already active. In this case, only enable the required resources during power-on. This works alongside the existing logic that skips the init sequence. Signed-off-by: Krishna Chaitanya Chundru Reviewed-by: Abel Vesa Tested-by: Qiang Yu --- drivers/phy/qualcomm/phy-qcom-qmp-pcie.c | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c b/drivers/phy/qualcom= m/phy-qcom-qmp-pcie.c index 86b1b7e2da86a8675e3e48e90b782afb21cafd77..c93e613cf80b2612f0f225fa212= 5f78dbec1a33f 100644 --- a/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c +++ b/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c @@ -3153,6 +3153,7 @@ struct qmp_pcie { const struct qmp_phy_cfg *cfg; bool tcsr_4ln_config; bool skip_init; + bool skip_reset; =20 void __iomem *serdes; void __iomem *pcs; @@ -4537,6 +4538,9 @@ static int qmp_pcie_init(struct phy *phy) qphy_checkbits(pcs, cfg->regs[QPHY_START_CTRL], SERDES_START | PCS_START= ) && qphy_checkbits(pcs, cfg->regs[QPHY_PCS_POWER_DOWN_CONTROL], cfg->pwrdn_c= trl); =20 + qmp->skip_reset =3D qmp->skip_init && !qphy_checkbits(pcs, cfg->regs[QPHY= _PCS_STATUS], + cfg->phy_status); + if (!qmp->skip_init && !cfg->tbls.serdes_num) { dev_err(qmp->dev, "Init sequence not available\n"); return -ENODATA; @@ -4560,13 +4564,15 @@ static int qmp_pcie_init(struct phy *phy) } } =20 - ret =3D reset_control_assert(qmp->nocsr_reset); - if (ret) { - dev_err(qmp->dev, "no-csr reset assert failed\n"); - goto err_assert_reset; - } + if (!qmp->skip_reset) { + ret =3D reset_control_assert(qmp->nocsr_reset); + if (ret) { + dev_err(qmp->dev, "no-csr reset assert failed\n"); + goto err_assert_reset; + } =20 - usleep_range(200, 300); + usleep_range(200, 300); + } =20 if (!qmp->skip_init) { ret =3D reset_control_bulk_deassert(cfg->num_resets, qmp->resets); @@ -4641,10 +4647,12 @@ static int qmp_pcie_power_on(struct phy *phy) if (ret) return ret; =20 - ret =3D reset_control_deassert(qmp->nocsr_reset); - if (ret) { - dev_err(qmp->dev, "no-csr reset deassert failed\n"); - goto err_disable_pipe_clk; + if (!qmp->skip_reset) { + ret =3D reset_control_deassert(qmp->nocsr_reset); + if (ret) { + dev_err(qmp->dev, "no-csr reset deassert failed\n"); + goto err_disable_pipe_clk; + } } =20 if (qmp->skip_init) --=20 2.34.1 From nobody Sun Feb 8 20:22:58 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 C1B1A2EC0B2 for ; Fri, 9 Jan 2026 07:21:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767943295; cv=none; b=I/TIM3I4jM4bxe/lL7KPnsUxZp9gXlDEr/k/DTXPVc2IzgdjoK3VicuwTi2tf745GRbi156U1x3Axv9nzAGTLgDSC64OnY+8H1wNTAq8CZZpeDbdxyzi9vUBxB8Gi1IJ2fmPoWd1QUPL71hqoWgd8hQa7diPf1yuUyeAkaSHxF4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767943295; c=relaxed/simple; bh=vinmZfaj1r+n5Dx0UgKPAqqqJqXxuE6TZN5VPmabgjo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Y14uNmW4pxlP1KgHJSfNIx1n4jedzRT7iFHRTCW3zKEw2YdB2ArQOgsuxuQ+WG399/eiDv+VS3kV0ee9Yrqi6aQdpthGhqtpRb+k5ucyrqy99MU7NfC4cS4uCQfkxXmFKDWtjrYyUh0pinaOHwzbcA6e/7JQpCFHRQvxcrNf+iY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=oSqF8QgM; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=IcxRMuEb; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="oSqF8QgM"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="IcxRMuEb" Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 608MpZs42328141 for ; Fri, 9 Jan 2026 07:21:24 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= bATFQdgkSJQNtrjTPNUlAQXLkiJbzJjL5+F3AAAsVSE=; b=oSqF8QgMtNDLGz4+ XwJrZs+Kv4Kg79Qp9FJMAvFRCHRvU6o8kDFAs3e9TuZAEzaArrSFZXzRVyfSOrOq 7hYRlhcLNxHO4QZx5EH7zxrKBRxw/zn+GJuhvdCqwuYvrLn71GvnPcGyModHd8VI PtVRvg3LWAbBiR3uSUKVEWmIRKy9OMxYnLCkN9Wqi8ieunynauGtpyi4FV/Zw7kC WrQ5MeT4F+fsEt6rdxmJYP6lqBuppgYjdlgsR+m6YnkLZOoFW3+8OhWgwtxHz9BY yh1pg54w4rKINHc02bMl27pMu/0QznERgFiJFwkzAekMh3spnE4vNBzQqND9XF98 09B7+g== Received: from mail-pf1-f200.google.com (mail-pf1-f200.google.com [209.85.210.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bjfdaadkh-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 09 Jan 2026 07:21:24 +0000 (GMT) Received: by mail-pf1-f200.google.com with SMTP id d2e1a72fcca58-7b89c1ce9cfso3716517b3a.2 for ; Thu, 08 Jan 2026 23:21:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767943283; x=1768548083; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=bATFQdgkSJQNtrjTPNUlAQXLkiJbzJjL5+F3AAAsVSE=; b=IcxRMuEbe/ZDPXJXMzswhRP/cqYPNCQYtlE8zsqA5GbTExA2wYPqv5vbgcmRr5BCoD g3zJqMG6bSh/FkwATMas7l11R8WUEwYor+YzXqVp9hukDUS+qMi72sG3jkieMUF7VeYx cQa9ssSu7omxAm8EfXVkhpLKuSRpIYqZForN7y+T9mG+slP2ib+vLK5SXTKRAOL6chHi +LHktGLSN2m1K7PZbwWF+LUgAp9kC+JvkEKmKXE34fjqv1U0faGgocKjKlIetkZ3GlL6 Wk/9AwMWB6AlXoK7eUyGq6buWx502PhK+gAi3BDT7/oS5q8bKWu0UYu8CO2GmtnSMr4U hOIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767943283; x=1768548083; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=bATFQdgkSJQNtrjTPNUlAQXLkiJbzJjL5+F3AAAsVSE=; b=NzP4SBdDcsTmXST+BXCG0YbSM76wDuLg5Pr13WyR1K2WW2HpzEuhXvqh5tmUNgbNAR f32J1DPMQxYsr2On4xG4Q6VOZrBDJNXCVYWTqGqhRX2+K7UJ3aNHzWd7mW2MZQbtPinl xY37vDjbIw8/8NeXZIVXlCgUBAPDXy0uXwgi3duAIq976/JvLS1Lob43iAFd+ywoYij/ 8v+n+3ckFtdhjHH87eEJzz+Ctvde3CM9L9Hu5Uh6pJFc/O9dNdfmlqYphRRBs58k2btN BlZLdGTmRB8eUYazZXEPfQwnom5yezu1Raave2NV05Firksw05HNcUjuI6oojb0Kfvap zhWg== X-Forwarded-Encrypted: i=1; AJvYcCVhB/cucI6Dq/zmeUAeXY4qj7g60hu5cEY9d32vlkuSYODz77GdtzJZcsL1OqOO6X7RcRcxJI685WPVeHw=@vger.kernel.org X-Gm-Message-State: AOJu0Yw+T/+DgtK8pcDP6voaABVkOTI4fbRtaba4uz8BBf/9DXOq0vNh Yk6ENnvsAK1UqN3NCSrkdZs2zWaSkdGnQP8TU1CeXoe0Su8PCdXg2zWGIOW+GsQ+9IDXC/obUeN bAMax2J8cm3si+hzlELN8RLw+IKNJBs/rJ1wOtwdMR23eQWdkvgSlzMqek1KDqImnnYs= X-Gm-Gg: AY/fxX6ztvK+emSRlP6pJrm4GS5Ae7IIT+4cxUndE5aqcYSdg7YGj99uVhsPZHhmtL3 5ORZq9IDpLQnvKM0YRl1P2ugQg6CaHNHDrMf0LSqwIRZaf5p+qR4Mo0kxYcU9dw8ZQZdqr46tIG +fDIvAvnX65vBPsRvCVbWCEjhuccp35ohiA7oeoZ3rO5yYhr1+TrEKi+6kilbJV5cDz7G0cCR6H CdsbbGrWtCc5+erpbUXXKFGVoJO2+DFxzZWYcyZFGJRr4qsRKXAHm7EqtV9XWhIGGn4rZ8VC0Eo 8e/oKls9sbEQpsdpbEXv4rklCBmgT6t6YKm4TR1P2383CVvOpKWQ1WUY+D0QrFbDTIPVl2/XFVm 5j/vbmMy/TeKqDKVfCjBPgwTQWccviafIrrc213ATG+Wg X-Received: by 2002:a05:6a00:32cf:b0:7fb:e662:5c8 with SMTP id d2e1a72fcca58-81b7f6e3a8cmr8329192b3a.30.1767943283381; Thu, 08 Jan 2026 23:21:23 -0800 (PST) X-Google-Smtp-Source: AGHT+IFnlV0I7WmCaNsCQSf5sgFNBK7QoW3YQzRGNWGVyGJy0Kc/9qDvIlm+MyH3UrATitJaDgV/Lg== X-Received: by 2002:a05:6a00:32cf:b0:7fb:e662:5c8 with SMTP id d2e1a72fcca58-81b7f6e3a8cmr8329155b3a.30.1767943282856; Thu, 08 Jan 2026 23:21:22 -0800 (PST) Received: from hu-krichai-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-819bb4c85bfsm9510369b3a.30.2026.01.08.23.21.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jan 2026 23:21:22 -0800 (PST) From: Krishna Chaitanya Chundru Date: Fri, 09 Jan 2026 12:51:07 +0530 Subject: [PATCH 2/5] PCI: dwc: Add support for retaining link during host 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: <20260109-link_retain-v1-2-7e6782230f4b@oss.qualcomm.com> References: <20260109-link_retain-v1-0-7e6782230f4b@oss.qualcomm.com> In-Reply-To: <20260109-link_retain-v1-0-7e6782230f4b@oss.qualcomm.com> To: Vinod Koul , Neil Armstrong , Philipp Zabel , Jingoo Han , Manivannan Sadhasivam , Lorenzo Pieralisi , =?utf-8?q?Krzysztof_Wilczy=C5=84ski?= , Rob Herring , Bjorn Helgaas Cc: linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, Krishna Chaitanya Chundru X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1767943270; l=1912; i=krishna.chundru@oss.qualcomm.com; s=20230907; h=from:subject:message-id; bh=vinmZfaj1r+n5Dx0UgKPAqqqJqXxuE6TZN5VPmabgjo=; b=31EkDX2BCydzu3cUHMOBpwb+Vozz0SRCXZY35FhypsrEw2cStV6ElJ16tG5VtEjEcfOtRSzhF doiP34NClqoBN8WcG5MNDF8pK50+/PopXJJ4iwhUG+DWtH9V8MgRTna X-Developer-Key: i=krishna.chundru@oss.qualcomm.com; a=ed25519; pk=10CL2pdAKFyzyOHbfSWHCD0X0my7CXxj8gJScmn1FAg= X-Authority-Analysis: v=2.4 cv=Ue1ciaSN c=1 sm=1 tr=0 ts=6960ac74 cx=c_pps a=mDZGXZTwRPZaeRUbqKGCBw==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=Py5lcOcq67Lbq8UMOfUA:9 a=QEXdDO2ut3YA:10 a=zc0IvFSfCIW2DFIPzwfm:22 X-Proofpoint-ORIG-GUID: QDWhcY84LiW2Q2jf2RlHiGlT9Hs2UXF4 X-Proofpoint-GUID: QDWhcY84LiW2Q2jf2RlHiGlT9Hs2UXF4 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTA5MDA1MCBTYWx0ZWRfX4PIKznP8ZgM2 ENLZehqzMkwhjUg2TiYv32Z6Eyu+QP+a9QbQg1+Xzw00HJqPYqtH4uYQ8AcNKG3ZEe2Qtl/Tqtg FCoj+HzEtjjwd6Y0YlBJ9udo7qs22BhUsuElhHNp9I4UTCsPtKaTBTf1eC5zSD7C6//PeUILs+X P35utKeiyWvuRtYVCndyrUnWVm/SJ2hUFd4E+miU0fb7dgZ5hC7h23OMXG710hwL0MxzFpKyM0i O1s06+Br0t/KAv14tm4gQ6eGCkqvddcSw3FsQW2aICYhS3gn8njMLfSefzv04C2ZKYyGrtRdZ2E VVX4TeDqjz5C+3NLST5FNcOU8IDRZrYb7gaxQ6OCGTYipDIZbTPQteSJTXzQSByCYNt3RDIT2iL U7tG9q+zKp802/1XF065rygyiu9x7uYtCQD8G8bXywKKE68TIZ1gZEtUCpN6UHAWPWXBW4hxLMg vctQNmpP332xkhG4oaA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-09_02,2026-01-08_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 lowpriorityscore=0 clxscore=1015 priorityscore=1501 bulkscore=0 suspectscore=0 phishscore=0 spamscore=0 malwarescore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601090050 Some platforms keep the PCIe link up across bootloader and kernel handoff. In such cases, reinitializing the root complex is unnecessary if the DWC glue drivers wants to retain the PCIe link. Introduce a link_retain flag in struct dw_pcie_rp to indicate that the link should be preserved. When this flag is set by DWC glue drivers, skip dw_pcie_setup_rc() and only initialize MSI, avoiding redundant configuration steps. Signed-off-by: Krishna Chaitanya Chundru Tested-by: Qiang Yu --- drivers/pci/controller/dwc/pcie-designware-host.c | 11 ++++++++--- drivers/pci/controller/dwc/pcie-designware.h | 1 + 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pc= i/controller/dwc/pcie-designware-host.c index 372207c33a857b4c98572bb1e9b61fa0080bc871..d050df3f22e9507749a8f2fedd4= c24fca43fb410 100644 --- a/drivers/pci/controller/dwc/pcie-designware-host.c +++ b/drivers/pci/controller/dwc/pcie-designware-host.c @@ -655,9 +655,14 @@ int dw_pcie_host_init(struct dw_pcie_rp *pp) if (ret) goto err_free_msi; =20 - ret =3D dw_pcie_setup_rc(pp); - if (ret) - goto err_remove_edma; + if (!pp->link_retain) { + ret =3D dw_pcie_setup_rc(pp); + if (ret) + goto err_remove_edma; + } else { + dw_pcie_msi_init(pp); + } + =20 if (!dw_pcie_link_up(pci)) { ret =3D dw_pcie_start_link(pci); diff --git a/drivers/pci/controller/dwc/pcie-designware.h b/drivers/pci/con= troller/dwc/pcie-designware.h index 31685951a080456b8834aab2bf79a36c78f46639..8acab751b66a06e8322e027ab55= dc0ecfdcf634c 100644 --- a/drivers/pci/controller/dwc/pcie-designware.h +++ b/drivers/pci/controller/dwc/pcie-designware.h @@ -439,6 +439,7 @@ struct dw_pcie_rp { struct pci_config_window *cfg; bool ecam_enabled; bool native_ecam; + bool link_retain; }; =20 struct dw_pcie_ep_ops { --=20 2.34.1 From nobody Sun Feb 8 20:22:58 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 C7B662ECE98 for ; Fri, 9 Jan 2026 07:21:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767943298; cv=none; b=pQy9eVaUU7BLCpR93a/EzZEyobha9W/6etPg7zF8431q4xr/18fIZwpMSEzf1uNJY+jn8Ajf4hRw3rrS4Xogl93djKaP3VKhYjTEiawSPzkJDaoh+1MDsibw17/3FbEGOdcLLtvtXZNr5SOnp5zYeVnBE54F4dLODjttYgmLQlo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767943298; c=relaxed/simple; bh=Q8+lBQYa1gwtIcmp/3kuabaN+M+86SlNF+xR/NMG0uk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Or/fKoTpBBrTRJ1LUm1/CSJFrjWujzhNXE2RGWEoLZpEVNCVi19TEORsMskV6Bk+kADr/qr0+Mo0UQKdRLnwpuVwkCfqF8VInFr8SsYqLkwNuG1Vl+QhwFs6X57uqFeYuTEyxeF2LoZGIgCd3hvAO5gMJjd7IZaEZRYn21EfJe4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=jHmMav5R; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Z10n94BH; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="jHmMav5R"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Z10n94BH" Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 608MpZs62328141 for ; Fri, 9 Jan 2026 07:21:29 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= guGTs/O1+KX/IddGJcB1UdQ/HB/cP55e3A+v7+B61bg=; b=jHmMav5RCAwEPaLR LBWihKxXHzXtkJml0VVjuou1ek7FVDiBvLhniT00D3tkuz3Ph9/7xLPiNO8ts8dL Q8snvDhPnkpZvdKJ8be8+Cx6G4GFn4fCAVxtmNS/fh9CArEZ0BLxB2oWHYzFpARr XvR+EBwTyH/2tAUKvtgTHknu4hL5DYSFj6NX1ow3Nsnep4ii1k1jNHUXPsFQgJ1M VNmdDsaOuBIc2LEtjCv+mnTvDtySvNW6weIfpvm8dhqZjvTaU1GKp4TlwXdvrhGs SDO5uBAIBZ5/MVbKAzLfb/bVj157jobWilfc6BiZSqLL79kjVLjf9KEwJxFYE/b8 V5vsww== Received: from mail-pf1-f199.google.com (mail-pf1-f199.google.com [209.85.210.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bjfdaadkt-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 09 Jan 2026 07:21:28 +0000 (GMT) Received: by mail-pf1-f199.google.com with SMTP id d2e1a72fcca58-7f66686710fso8022278b3a.3 for ; Thu, 08 Jan 2026 23:21:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767943287; x=1768548087; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=guGTs/O1+KX/IddGJcB1UdQ/HB/cP55e3A+v7+B61bg=; b=Z10n94BHQkNOKgVoM3cGrO/aPeuNz1PrJombjW9f2rtt5QI9wfeIcfKuLccmhUfDxk 0ExZ4KllmCRDJ3Brz0TOjfMhd7//fjLJmxbYC39SbkEWLuaf45zkRm0k6SHnZgNDYpY/ /I0jXB9WXIFSuCKMH+sJBoyX9+/ugZYWXK4b9nPLT+aqHC4MTRi+BA26pT+R7ccYSISG cZK95HFNcWiYL0mohOZbfhchkVc5k/6Z3HG8Y7KYJetsue7Glb5e44otRQp3WrMVQKQx V1OfHEb55pa1oliPNclSONnAosljgrz6JlFmfYmQQfbksY0OE64NCa3aWgtlsTifFIWL Kf4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767943287; x=1768548087; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=guGTs/O1+KX/IddGJcB1UdQ/HB/cP55e3A+v7+B61bg=; b=Bev9SGPAUBSqegf18D7DD8nVxloPSB/xSGwAy9PGDqJYbHPerXlImuToLdgiVKzAEl mWgwBkj7jh2Sgaj3DNurkjlhnyLof+KUbpPGnVzo5RZHo2JF88et8A5Cb+X7eScuMv1/ 0Ju77Xo3jWDkxFY2Km30UFWaFXxJBj3r06E1hCoI2ltCxpt9MCVZcfz1WJUnZ2BjkOqW 2LSlnOXqo1ycCc/xbPDH/bPvpsPg8LXalWT9FjuNYU/2vbRapLHNPdyWfbKarjhV1R34 KpC2CTDIkOF7S0nCGyD1q3YADhRmtms7Etx1DrLEzZBJ+i22Q3sA0eBVQYQnYA4rso6H 0XTw== X-Forwarded-Encrypted: i=1; AJvYcCVqWc+3/IF7DNTqwtyquYixaWt1eS0KIYSd7UY72b4CL34WZrHd7Rw7GR33HLuAA9bJr7jk8MCgUjZeeKY=@vger.kernel.org X-Gm-Message-State: AOJu0YxWR5beq+m7klJQmQZscVNvQ15VHRv0AoLQu2bAWlrRpS36PQCe ZZ2ShR+N1GTJsLo3bXdyKvojHxeN75h+XNwA3au2DGdeolSNZQ5CedNVgNWQgxJCszXTCVQjdIh dh/SSxX1yPDNe9RTQgxikQgsqlQtgOoY1Eyg6ar0giGUZRE75h10AT7GyWMYmQIiuqq6LE2qWq3 8= X-Gm-Gg: AY/fxX70ZDsdvnUsi7eoaQI3ZcYr5kn71HzVBrwu4+ctcoKIywyuffKYispZPDEMpIm OF2glWfW8WLbyMoTCLrSzkJgdb/3ELCaKMigE4DJolXKxNRX8tkazj+ZNxgG+ptpIM96UdS/ZjP eXHKfCPWFpNko3Rbu+uQWqjMadxGwPEUA8BaV4VFdqy3GoVGOLyf8/P62MgHj6k6PIcSUhuJaPH P5FAEv3W7BKoUSp6C6C83nyb5jlge6tRo0/X9GaQnkynhOdX1beo1a8ix5o/GZIQpoBjwAmVZLJ ktbrngL4RJGjqznitN/xxxE+J3+1Hh2kCfQFb12X90wvvPwQlpYt44UTHyi3CBFUGviDluGHBLl 9i5d1t82AEPajv5HP1vkRPmyLBeh/x7Xwt37LZ3nNbU6D X-Received: by 2002:a05:6a00:ad89:b0:81e:b93a:ab17 with SMTP id d2e1a72fcca58-81eb949ef05mr109783b3a.15.1767943287504; Thu, 08 Jan 2026 23:21:27 -0800 (PST) X-Google-Smtp-Source: AGHT+IHHHO/gTWbofCIbVPKFC0FzAlp9Te+YLm5t90cM0UJujZ0kZxgVI4P5Y2KLOWpErfRjlJU2oQ== X-Received: by 2002:a05:6a00:ad89:b0:81e:b93a:ab17 with SMTP id d2e1a72fcca58-81eb949ef05mr109775b3a.15.1767943287110; Thu, 08 Jan 2026 23:21:27 -0800 (PST) Received: from hu-krichai-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-819bb4c85bfsm9510369b3a.30.2026.01.08.23.21.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jan 2026 23:21:26 -0800 (PST) From: Krishna Chaitanya Chundru Date: Fri, 09 Jan 2026 12:51:08 +0530 Subject: [PATCH 3/5] PCI: qcom: Keep PERST# GPIO state as-is during probe 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: <20260109-link_retain-v1-3-7e6782230f4b@oss.qualcomm.com> References: <20260109-link_retain-v1-0-7e6782230f4b@oss.qualcomm.com> In-Reply-To: <20260109-link_retain-v1-0-7e6782230f4b@oss.qualcomm.com> To: Vinod Koul , Neil Armstrong , Philipp Zabel , Jingoo Han , Manivannan Sadhasivam , Lorenzo Pieralisi , =?utf-8?q?Krzysztof_Wilczy=C5=84ski?= , Rob Herring , Bjorn Helgaas Cc: linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, Krishna Chaitanya Chundru X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1767943270; l=1606; i=krishna.chundru@oss.qualcomm.com; s=20230907; h=from:subject:message-id; bh=Q8+lBQYa1gwtIcmp/3kuabaN+M+86SlNF+xR/NMG0uk=; b=7YI5V7nEUujpXnOmp3l/fb1YAPFx6zBRbuPbaO3yNRw0oukGrQ0a1Ora1XFfVbDewrYHatld6 n+neRReQcqNAII0gT6zmA6BhgsYMZkhIeu6GLIB2gaqU+psBqT8DuE6 X-Developer-Key: i=krishna.chundru@oss.qualcomm.com; a=ed25519; pk=10CL2pdAKFyzyOHbfSWHCD0X0my7CXxj8gJScmn1FAg= X-Authority-Analysis: v=2.4 cv=Ue1ciaSN c=1 sm=1 tr=0 ts=6960ac78 cx=c_pps a=WW5sKcV1LcKqjgzy2JUPuA==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=Py5lcOcq67Lbq8UMOfUA:9 a=QEXdDO2ut3YA:10 a=OpyuDcXvxspvyRM73sMx:22 X-Proofpoint-ORIG-GUID: YnuQxXW8d_cg3UbOKUmXbwDV1OQ4REKU X-Proofpoint-GUID: YnuQxXW8d_cg3UbOKUmXbwDV1OQ4REKU X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTA5MDA1MCBTYWx0ZWRfX/N0DG6xBObIa 6F8AekqZGCuG5wGJXRhLaaA/i654s2W85clJjUxteE4OjhMJSe6sxdvYbL0HUtxLYLVyTdyVFTP rtRHKLx7FBdLXNuhbE3t+gRjnx4dkYvk2vnU2rUpAEMS0Nlgqp/3Vpl7Xr7vOzb4mQcV692redO rXBSUcDPrV8lp2a9WiIqpxsVazyRIO4tShFYK7dzq3V4m+6QvxLgf2zCBvUVBdRU5spqcaC0Ef3 X8q6omGwOLGB5xVKhCm8+0MXqF9FHXWhTvVziezAcey9lpuUu7BknQxMbIkSG0HF00U8UdidqBY yIPxnu8BR7YyOfmfyvFqHglj4kEro+3d24lUbApafeOsVv+WhMFWDYUlYMV1QDNmUKdxEXTCYIs CcQyXUqj7PTqFP7fKep7nW7OsSuWPou0pbE9a49TF8umXYKACq+mBmYuKWdZZpncLAdxMrJTDQC wlAby7UcAip+/zT7n1A== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-09_02,2026-01-08_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 lowpriorityscore=0 clxscore=1015 priorityscore=1501 bulkscore=0 suspectscore=0 phishscore=0 spamscore=0 malwarescore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601090050 The PERST# signal is used to reset PCIe devices. Currently, the driver requests the GPIO with GPIOD_OUT_HIGH, which forces the line high during probe. This can unintentionally assert reset early, breaking link retention or causing unexpected device behavior. Change the request to use GPIOD_ASIS so the driver preserves the existing state configured by the bootloader or firmware. This allows platforms that manage PERST# externally to maintain proper reset sequencing. Signed-off-by: Krishna Chaitanya Chundru Tested-by: Qiang Yu --- drivers/pci/controller/dwc/pcie-qcom.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/pci/controller/dwc/pcie-qcom.c b/drivers/pci/controlle= r/dwc/pcie-qcom.c index 7b92e7a1c0d9364a9cefe1450818f9cbfc7fd3ac..9342f9c75f1c3017b55614069a7= aa821a6fb8da7 100644 --- a/drivers/pci/controller/dwc/pcie-qcom.c +++ b/drivers/pci/controller/dwc/pcie-qcom.c @@ -1711,7 +1711,7 @@ static int qcom_pcie_parse_port(struct qcom_pcie *pci= e, struct device_node *node int ret; =20 reset =3D devm_fwnode_gpiod_get(dev, of_fwnode_handle(node), - "reset", GPIOD_OUT_HIGH, "PERST#"); + "reset", GPIOD_ASIS, "PERST#"); if (IS_ERR(reset)) return PTR_ERR(reset); =20 @@ -1772,7 +1772,7 @@ static int qcom_pcie_parse_legacy_binding(struct qcom= _pcie *pcie) if (IS_ERR(phy)) return PTR_ERR(phy); =20 - reset =3D devm_gpiod_get_optional(dev, "perst", GPIOD_OUT_HIGH); + reset =3D devm_gpiod_get_optional(dev, "perst", GPIOD_ASIS); if (IS_ERR(reset)) return PTR_ERR(reset); =20 --=20 2.34.1 From nobody Sun Feb 8 20:22:58 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 2C0C22EC559 for ; Fri, 9 Jan 2026 07:21:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767943295; cv=none; b=ZE7EmgDIGRWjIlFGrkV/L0O4g7LAvjbHH9gAwBWbId3+gkccW073AyiRyD/0jHf9a7Nynkvqz68OcyxziV5KiQ+oPIOfjPY+l8ymvq5fhRlGyJNtjJSiOGkF3boPYrTAPdJtnmPGbcg4h+PDJOL3UBO+XT0Xvl8dEG/gyvpekjI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767943295; c=relaxed/simple; bh=sATat5gXi+RmClCqAUl81QS783eB44xkTcOkPS41g74=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=YYQ1g33ZXcXdfLkhfgK560WQnrhSrSeRETTe50b3+XyfD2/Gli06NRUu7UsJ6trS6bt6EjvAhpE7r6dMGPjg+w8/6B4tR2dMa1MwKM5pkCwGcAmM1PXvadzytu9RoyxUe2rsoESFfb5WuAzsxy0pn+eoAux5tPPgjPQMcd8vS/k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=FdOinPKa; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=ShTQDBeS; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="FdOinPKa"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="ShTQDBeS" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 608MoqY93218559 for ; Fri, 9 Jan 2026 07:21:33 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= 72S83sFcJLczdJt8oEW24FAL+N/F40XzrhBECgz9llc=; b=FdOinPKaTYDaHT4h fQToOCGUwhBzCHAGgahjXuDn6HqKxW3zHbrFvSl4wuwsfAmtpkcyOpg0gFXeweiy grH6Yg44JTuzVq/mVqGlZ1Kb3aPHZo2b2uNV+y/LlSJTCCrSOXtYgGTFqZUxNbWq 1EuFLO9vFg2HDCEhCi5RuY0+U/NW4YWTvOBC7MP45frAnLDKbdirpS/kh4laBTBh RuOJwRrbb8d805eZvUaOm1Wcy1/RaKTKtNJoNg44iP9YXh5d+Z6H5+gdehM2PSZg f1A5I35RGuUzUAI5TZ9/I7B2p+X7mgYj2yUegnumUiSpu2re8SsrSNdAd2XYDaip IJoukg== Received: from mail-pf1-f197.google.com (mail-pf1-f197.google.com [209.85.210.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bjjt0hkfu-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 09 Jan 2026 07:21:32 +0000 (GMT) Received: by mail-pf1-f197.google.com with SMTP id d2e1a72fcca58-81c68fef4d4so3240423b3a.2 for ; Thu, 08 Jan 2026 23:21:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767943292; x=1768548092; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=72S83sFcJLczdJt8oEW24FAL+N/F40XzrhBECgz9llc=; b=ShTQDBeSOSn5ZTDX0X6R6PaYLQQux+GIdFZldqGsRVkaGDkt7NRzuITdSbTvHpcPoy 6Kf7gu6snLgdDK8R7ysVknpwfIfT0eWif+tIjlTXGGWDFzOYl9x6zRo+QMI1N8Mt0l0S srbtVCn8UDlMkwqFyR9qZzkqWyTRYB4KXCIdaGD7oROW4ehBQSIKLCWXiOMhYOV+uB6f 1JkLSe6YrHfhL7DsC/MdDG94AJLHYru9NDALj8hQLUfBN1G1he2W3K5/VKsf7Rq5Xuoh wXURCyoZj+q3b7fRx6fQDjvbFt9oIn8NHNeJpvvKPpvhqQ1ZvV+SPP3ewMS9UWgzpj/I 5tjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767943292; x=1768548092; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=72S83sFcJLczdJt8oEW24FAL+N/F40XzrhBECgz9llc=; b=VJPtOeUlv0Xht4SBr12t+pj4Ayjna7OiETxoaF0R5+mwJoohsWj5tpogMZOpytzX20 CHNqnilIHriVILtau6Wde1I1MpmxIT2iUECj875879HmWlmY0wWV6mi6bovpuwM7YypU cONwF/SwzkLFV2NP26HVh5wgUuTweVcqH17bxfpdu9lgBPp3P2OYKrsr4p+aSB3p1E44 gVw2hcIghucRYdmyWKrIj+SzPe2DVe3PiKMU+qB/Q2F6dRVKWq0TixfwdthJSqktT+w8 TRh5ce4kNJrqpxjvJbXpQKq8enVxfhCvjDsXMZCNAbtC3bdwB94PnoxdesUpLUJXUDzl 9tdQ== X-Forwarded-Encrypted: i=1; AJvYcCVDNYVC+fsCfNzT/qM4+gOSPLFVvzVGPbzvYf6FZn9yynmJWt15yupf1X7RWNbakYiwdV5z9NxwUd2sUZ8=@vger.kernel.org X-Gm-Message-State: AOJu0YwUSWH2OJ25qAKl/4XE9ATQtX8JawxUm7q09ZEd66yqjpruWVr2 FmVpmB+4OZE5huaIsgscUxTVpi8DUNvErffECmnOhwmPRCMwT4Qq4G2Yp9G5p7u8mwtn0hnBvTC L5HYKbiStmjREiCfR1inr4NoJK2XzZ3LhD210dSVPNXqM8DSiHR+a91OU4ccUlWEzNdnxZguuNH s= X-Gm-Gg: AY/fxX7mUFFVqa6/ATMLA/Pyu0tf8jA1tHSKhdGQBIj+wvChqI2700cbJE4Kgp45XYq IVD6x9VMHpeXOO3vMlXfU/J+buf8NEy3DJ+isZEwO95LNEK6bwl239Dyb8OTIXu9M6Jgb/+axtp +K6p4UQAI3bfobHFEj2XFUCO32Ts8EUwCkdMr2El3uKhtGW6OiZ4aAfXfIiVJ6dKI90csgi97P5 RZDz0uNhMjTsxDmmHoGRxKT0ailmK7xh3gnaccqWMlyJxxl4dL4oYewRReLa4DPSZVUYYzPs0MG 9nts79CUK9Hh0Ytu5NByW5VJGEkgLNHzL/txGA+upuHM77bfuU8Jq+Q2ZzdH8tNN3v49GTcDGSL Kn85DpyQG6V2hIIHF9UBnGniUbzoWgJwa3iNHAFz/AcEJ X-Received: by 2002:a05:6a00:e19:b0:7e8:43f5:bd18 with SMTP id d2e1a72fcca58-81b7f3f1ff7mr7879189b3a.45.1767943291779; Thu, 08 Jan 2026 23:21:31 -0800 (PST) X-Google-Smtp-Source: AGHT+IHBsaYWHr8eZog5Woy39kTSosevSsQ2EU8sshvTGXJv+BXUHaeNfYg7ku/1jVEn99TS7RH7bA== X-Received: by 2002:a05:6a00:e19:b0:7e8:43f5:bd18 with SMTP id d2e1a72fcca58-81b7f3f1ff7mr7879143b3a.45.1767943291246; Thu, 08 Jan 2026 23:21:31 -0800 (PST) Received: from hu-krichai-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-819bb4c85bfsm9510369b3a.30.2026.01.08.23.21.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jan 2026 23:21:30 -0800 (PST) From: Krishna Chaitanya Chundru Date: Fri, 09 Jan 2026 12:51:09 +0530 Subject: [PATCH 4/5] PCI: qcom: Add link retention support 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: <20260109-link_retain-v1-4-7e6782230f4b@oss.qualcomm.com> References: <20260109-link_retain-v1-0-7e6782230f4b@oss.qualcomm.com> In-Reply-To: <20260109-link_retain-v1-0-7e6782230f4b@oss.qualcomm.com> To: Vinod Koul , Neil Armstrong , Philipp Zabel , Jingoo Han , Manivannan Sadhasivam , Lorenzo Pieralisi , =?utf-8?q?Krzysztof_Wilczy=C5=84ski?= , Rob Herring , Bjorn Helgaas Cc: linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, Krishna Chaitanya Chundru X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1767943270; l=4282; i=krishna.chundru@oss.qualcomm.com; s=20230907; h=from:subject:message-id; bh=sATat5gXi+RmClCqAUl81QS783eB44xkTcOkPS41g74=; b=/zFkBrsSntluR8iQc/wubd+dohrF5L/1t1GC/liOmhwA0+Vxai9BpzHpjhct44yyHtNpaSt6d 70jOpWu4WP0Aofc9GwjUx9bfI/LQXB3Oy5Huej4BYcKA8AjhCv1Naim X-Developer-Key: i=krishna.chundru@oss.qualcomm.com; a=ed25519; pk=10CL2pdAKFyzyOHbfSWHCD0X0my7CXxj8gJScmn1FAg= X-Proofpoint-GUID: OKUPpJ9f6SszfK3hQXfQiotAkw-RDUh5 X-Authority-Analysis: v=2.4 cv=VJzQXtPX c=1 sm=1 tr=0 ts=6960ac7d cx=c_pps a=rEQLjTOiSrHUhVqRoksmgQ==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=S-wDCh2AgS0RhsWIeBgA:9 a=QEXdDO2ut3YA:10 a=2VI0MkxyNR6bbpdq8BZq:22 X-Proofpoint-ORIG-GUID: OKUPpJ9f6SszfK3hQXfQiotAkw-RDUh5 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTA5MDA1MCBTYWx0ZWRfX+F7RUEryxTJx ZghGw13CHQAdAMRRKrnvPhE7Wp24xRinHA4pGL7KDmVrF4EfU5r3D15jNRDSUDYlYlY+l9Be06r T471bzWZB83bLU0ijIM7G5TGe7NFB4K7fnLmo0z1p4m4nPb3CdxRU2A2rIcPHx4G8JBcyQPcL4C uDSz+9NWugUztwmo8gzW8vkgqcabpWg1otiZMuQps8uALz7V2E4TmAJ87tLRpqG28CrB8d1ziSI gCFt+DWNyv9KKvGmMquMclaJ6ZbRysEgEIKk4QtwML0ZSyNrpP1yX9Oug0XaodC1dvdzMZrlDyW tD5woV5nGXSFA1gjOwMvFTuMU6Gu2Hex2PlxGKcpWo3//hOGI5s7CczQRANt8rlWnDJmHCMDPug FqifXPX1vrDqPJ6pjEHs8d6VZoxLDatjb/mjrQj42FHcfd56BbAzkbQ104NxESQsoRAlo/HtpPQ WyUbyhW4oROcGlsRaHA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-09_02,2026-01-08_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 suspectscore=0 spamscore=0 phishscore=0 clxscore=1015 priorityscore=1501 adultscore=0 bulkscore=0 lowpriorityscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601090050 Some platforms keep the PCIe link active across bootloader and kernel handoff. Reinitializing the controller and toggling PERST# in such cases is unnecessary if driver doesn't want to do link training again. Introduce link_retain in both qcom_pcie_cfg and qcom_pcie to indicate when link retention is supported. During initialization, check the LTSSM state, if the link is already in L0 or L1 idle and LTSSM is enabled, set pp.link_retain and skip controller reset, PERST# toggling, and other post-init steps. If there is a devicetree property to restrict PCIe data rate and lane width go with the normal execution instead of link retantion logic. Configure DBI and ATU base in this scenerio, since bootloader DBI & ATU base may differ from HLOS one. So use the DBI & ATU provided from the devicetree. Signed-off-by: Krishna Chaitanya Chundru Tested-by: Qiang Yu --- drivers/pci/controller/dwc/pcie-qcom.c | 50 ++++++++++++++++++++++++++++++= ++-- 1 file changed, 47 insertions(+), 3 deletions(-) diff --git a/drivers/pci/controller/dwc/pcie-qcom.c b/drivers/pci/controlle= r/dwc/pcie-qcom.c index 9342f9c75f1c3017b55614069a7aa821a6fb8da7..bdd5bdb462c5f6814c8311be964= 11173456b6b14 100644 --- a/drivers/pci/controller/dwc/pcie-qcom.c +++ b/drivers/pci/controller/dwc/pcie-qcom.c @@ -259,12 +259,14 @@ struct qcom_pcie_ops { * @override_no_snoop: Override NO_SNOOP attribute in TLP to enable cache * snooping * @firmware_managed: Set if the Root Complex is firmware managed + * @link_retain: Set if controller supports link retain from bootloader */ struct qcom_pcie_cfg { const struct qcom_pcie_ops *ops; bool override_no_snoop; bool firmware_managed; bool no_l0s; + bool link_retain; }; =20 struct qcom_pcie_port { @@ -965,6 +967,35 @@ static int qcom_pcie_get_resources_2_7_0(struct qcom_p= cie *pcie) return 0; } =20 +static bool qcom_pcie_check_link_retain(struct qcom_pcie *pcie) +{ + u32 cap, speed, val, ltssm, width; + struct dw_pcie *pci =3D pcie->pci; + u8 offset; + + val =3D readl(pcie->parf + PARF_LTSSM); + ltssm =3D val & 0x1f; + if ((val & LTSSM_EN) && + (ltssm =3D=3D DW_PCIE_LTSSM_L0 || ltssm =3D=3D DW_PCIE_LTSSM_L1_IDLE)= ) { + qcom_pcie_configure_dbi_atu_base(pcie); + + offset =3D dw_pcie_find_capability(pci, PCI_CAP_ID_EXP); + cap =3D dw_pcie_readl_dbi(pci, offset + PCI_EXP_LNKCAP); + speed =3D FIELD_GET(PCI_EXP_LNKCAP_SLS, cap); + width =3D dw_pcie_link_get_max_link_width(pci); + + if (pci->max_link_speed > 0 && speed < pci->max_link_speed) + return false; + + if (pci->num_lanes > 0 && width > pci->num_lanes) + return false; + + return true; + } + + return false; +} + static int qcom_pcie_init_2_7_0(struct qcom_pcie *pcie) { struct qcom_pcie_resources_2_7_0 *res =3D &pcie->res.v2_7_0; @@ -983,6 +1014,14 @@ static int qcom_pcie_init_2_7_0(struct qcom_pcie *pci= e) if (ret < 0) goto err_disable_regulators; =20 + if (pcie->cfg->link_retain) { + pci->pp.link_retain =3D qcom_pcie_check_link_retain(pcie); + if (pci->pp.link_retain) { + dev_info(dev, "Enabling link retain\n"); + return 0; + } + } + ret =3D reset_control_assert(res->rst); if (ret) { dev_err(dev, "reset assert failed (%d)\n", ret); @@ -1043,6 +1082,9 @@ static int qcom_pcie_post_init_2_7_0(struct qcom_pcie= *pcie) { const struct qcom_pcie_cfg *pcie_cfg =3D pcie->cfg; =20 + if (pcie->pci->pp.link_retain) + return 0; + if (pcie_cfg->override_no_snoop) writel(WR_NO_SNOOP_OVERRIDE_EN | RD_NO_SNOOP_OVERRIDE_EN, pcie->parf + PARF_NO_SNOOP_OVERRIDE); @@ -1300,12 +1342,13 @@ static int qcom_pcie_host_init(struct dw_pcie_rp *p= p) struct qcom_pcie *pcie =3D to_qcom_pcie(pci); int ret; =20 - qcom_ep_reset_assert(pcie); - ret =3D pcie->cfg->ops->init(pcie); if (ret) return ret; =20 + if (!pp->link_retain) + qcom_ep_reset_assert(pcie); + ret =3D qcom_pcie_phy_power_on(pcie); if (ret) goto err_deinit; @@ -1316,7 +1359,8 @@ static int qcom_pcie_host_init(struct dw_pcie_rp *pp) goto err_disable_phy; } =20 - qcom_ep_reset_deassert(pcie); + if (!pp->link_retain) + qcom_ep_reset_deassert(pcie); =20 if (pcie->cfg->ops->config_sid) { ret =3D pcie->cfg->ops->config_sid(pcie); --=20 2.34.1 From nobody Sun Feb 8 20:22:59 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 D54DB2EC0B5 for ; Fri, 9 Jan 2026 07:21:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767943305; cv=none; b=I3o9FingowiLmr+LP2iNzcKJFgOxuzPow2YOBfkimVYHGSGfnjqa2MinrchPOFh5udVRZfyDi73LVwCayffc9QL3i4pUvm8ZZwavG9UcwNcn9q/AeBBMlRAYd8k1pXKxGAnWLY/rgj3gh9xUo1wUdzIkRSoJjWXMx5wgE+TAXGs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767943305; c=relaxed/simple; bh=zejg997ZSWXmNp4lbxFPzukiCXSgprPeCxqQHhJcU0U=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Pg/+Y6yxitYlm16Bpp4HIWmzKKA7rYHdEQXh+Ii2DAzyRZKOMqDnx2VXS5Q1sEihD4zhCqBALVAob3Vq2tJYQgA2aoCQpsFqA3tvxH10uycaj/U/xUuqUu65cTmhgQLSc9/UFRgai2xnQUn7LZw7jFAzfXHRd43z6tXzlDHGJdU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=UfyDZENu; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=KGrGTS3L; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="UfyDZENu"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="KGrGTS3L" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 608MowFY3219136 for ; Fri, 9 Jan 2026 07:21:38 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= MWLM+x08j2mwTQLmHLC3ONhPhRCtuCvxS6wZ5AjUj04=; b=UfyDZENurunldCrr Y9/dJ2zroDAmVR/RMM4wHwsVVf7V4nuIDmjOjck7MxdsO5mzrFTnruLU9grlWnzz uNNy3uH87kfxlIBAY4QUJSp2F3wU45tKXtFjNthPtLI7hidI0YAoWQ2sjcNtWTuX mQeBXu9ApZ5A/WntG9zkJB7op6Zc2rK2k/gExs349t8WEzOWaCSG81XCqsjawCtU P4PAJRpJnykjUZW0VCkvhjXUntQZsQrHMpuoPG6a5w7RfupVjtL4NDKGBOY7Jy7W odgHgJrGdoyGiPoIInR67wjarNJUBvF8+rXXjOJd2rESdtNUoIqvFMBjT7HONw7P Pr3NUQ== Received: from mail-pf1-f199.google.com (mail-pf1-f199.google.com [209.85.210.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bjjt0hkg3-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 09 Jan 2026 07:21:37 +0000 (GMT) Received: by mail-pf1-f199.google.com with SMTP id d2e1a72fcca58-7b9321b9312so7280850b3a.1 for ; Thu, 08 Jan 2026 23:21:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767943296; x=1768548096; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=MWLM+x08j2mwTQLmHLC3ONhPhRCtuCvxS6wZ5AjUj04=; b=KGrGTS3L558H8653QzS/ScRlxGM0txsL3PvSA9PJ5i0F51v48WYObpkEZQ/NampKxB +XI7F3trhic0PlGb6sH4Qzs2/l1zacDiXx4GfAuWbAUKDSeKWZV/WOoCGx4vuVFwDbUM qhpJbZIYZvaRsNTVvtl5VXVpVd3mLv4MJJJ1Xti5FX9RHrtkFq9NpzkbuH8YpPJuGIRG kBpWBNVTyeILyvFXVek+3Gmno1/FYh0qA3JOQJCdheLMble4wwgwKcn6eZSdAuzeO5Ny kgJO3g1tBCf1o4rx3rMhXkMK/U+VuQP/PDOB/RITek2dfHhbwCIaxaC7kaOw3T0UHEFX KRiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767943296; x=1768548096; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=MWLM+x08j2mwTQLmHLC3ONhPhRCtuCvxS6wZ5AjUj04=; b=mwUrGillTwCmKS6Ff9V9X4NeLDgBut4opMAYjaypPr0HZTg18dXMkv9x/BDlYYf8ID hSTI3F6UHmzHoaAWcIDlIy4WH4W0z6xG/D4KRr6o68Fyo/ijQ+2wjwL/cBwl7LJONd6t WMsR0VgyE23XiVdhudAwaluBj+WqTNWGY7GY23C1STXj4doRmKDs7+ROX+uadaKlr5k3 /SmdMgQE8CxUWQD1nCqOC9NAVicE7p4+DgHlr+qON3o7GQxgP2HxxBinv15ZHt9mRaG/ ThbuEewYjo25TbxcW9nuTAPnG8bQftTqBlQKSxC2a021uEoYYhQGFbg1sUX7c8/CQ1vp YX6Q== X-Forwarded-Encrypted: i=1; AJvYcCWPHRJtQf5GA9l1wesFmKr4NEoBA2I51krokSmoy8pFqSiaj8GxT6n6nrqB6RBOdWP3HHwQrzSRuSwsXTY=@vger.kernel.org X-Gm-Message-State: AOJu0YwHTQFqrr/Vh1xPpj4AtreVx5KRmaOkJSu7X+zAWQ254g8mv2Lq u5fpVO0BZcRiynxuN9KlQa/xMQmGM7dvOWOcza8WMhSWSDC1ZSaN+FcJwmcDzoDPopc00z9UTKg HtO1wY8GuDmV38GpqBvTcWXHOEtIFRGUMDGVpy+Vn/hkkALjQ/8xslw7quEUsC8VI4wY= X-Gm-Gg: AY/fxX7GWHod7K+ugOXXN1uWxjLUEeRXO93QKVuhjaoLFVeKUWBhyKt+Zyv0kycG84n izALOtAThMwmfmb8yfpdIuI47WEknAH5/6dAT8d1w89xSDDvXiudMEoEv1ZPsm5rBmeK5V3YNDQ iwPbBfW8xMhVSlxX/3/0VXNamzVUZD/cdcplRlh7dzBxmjokahJhOUWkmeFR/Pc3nhnE1eGeIUu mw4QtARAH6wQS6I7C+qb+YT3gGPucZatMUMWqvhS1dP6yMQth4Wo16PQhoamonuo08FVSE8QDS/ n3XG0VwU7iu9Nnz9BJuT4o/wLBTZXD0JA30d6u22uFS5DFTC6fEHelXRGtSX1r3ilLLvIYaXiJP 8cmosEEccYhPM6cTA5BYpeiMZQBDmLDEc6aNbaGtUJF+T X-Received: by 2002:a05:6a00:408c:b0:7e8:43f5:bd21 with SMTP id d2e1a72fcca58-81b7f9d4d7dmr8834828b3a.54.1767943295907; Thu, 08 Jan 2026 23:21:35 -0800 (PST) X-Google-Smtp-Source: AGHT+IF5oswvUvt2eSKOV/gIHmGq+k+j9ho0bKbXCQiNsUMKePo3mhru5IonqVUsfFuQd52XyRbzRQ== X-Received: by 2002:a05:6a00:408c:b0:7e8:43f5:bd21 with SMTP id d2e1a72fcca58-81b7f9d4d7dmr8834799b3a.54.1767943295422; Thu, 08 Jan 2026 23:21:35 -0800 (PST) Received: from hu-krichai-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-819bb4c85bfsm9510369b3a.30.2026.01.08.23.21.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jan 2026 23:21:35 -0800 (PST) From: Krishna Chaitanya Chundru Date: Fri, 09 Jan 2026 12:51:10 +0530 Subject: [PATCH 5/5] PCI: qcom: enable Link retain logic for Hamoa 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: <20260109-link_retain-v1-5-7e6782230f4b@oss.qualcomm.com> References: <20260109-link_retain-v1-0-7e6782230f4b@oss.qualcomm.com> In-Reply-To: <20260109-link_retain-v1-0-7e6782230f4b@oss.qualcomm.com> To: Vinod Koul , Neil Armstrong , Philipp Zabel , Jingoo Han , Manivannan Sadhasivam , Lorenzo Pieralisi , =?utf-8?q?Krzysztof_Wilczy=C5=84ski?= , Rob Herring , Bjorn Helgaas Cc: linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, Krishna Chaitanya Chundru X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1767943270; l=1470; i=krishna.chundru@oss.qualcomm.com; s=20230907; h=from:subject:message-id; bh=zejg997ZSWXmNp4lbxFPzukiCXSgprPeCxqQHhJcU0U=; b=ecroe9T2ZoReGjqBPMd9o0jNW9qHm6mLLPK+GU5EYr6zawWa3YYes2XYS1rF24v+W69OfgEkE LE2BGNylqYfD079R1I5yn0tCkuLwCH2KxX2PO1LpFGylbeXS0VFLHT4 X-Developer-Key: i=krishna.chundru@oss.qualcomm.com; a=ed25519; pk=10CL2pdAKFyzyOHbfSWHCD0X0my7CXxj8gJScmn1FAg= X-Proofpoint-GUID: gbbU9EmrmkEKkxxYOyi0sNF-uBfvmSCj X-Authority-Analysis: v=2.4 cv=VJzQXtPX c=1 sm=1 tr=0 ts=6960ac81 cx=c_pps a=WW5sKcV1LcKqjgzy2JUPuA==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=Py5lcOcq67Lbq8UMOfUA:9 a=QEXdDO2ut3YA:10 a=OpyuDcXvxspvyRM73sMx:22 X-Proofpoint-ORIG-GUID: gbbU9EmrmkEKkxxYOyi0sNF-uBfvmSCj X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTA5MDA1MCBTYWx0ZWRfX8LCDIHfo5Z09 L8fc5a9BcdbZQvA5e4/fNXYO11kTvZKkD8I3HvVw9TsCGELWH44fWB5DhT56L8Yf8EDQ0fZvlr4 RF/jal02FM78mGpxWee9RNC9YsJqZJgi8LHddLQGZmTioUlM6PDmpp8nxSWhskncpy2fyY3Ifyn RNPeyTuAEHQ3cLFzVk5uAiH9ixWlLNe0+1TT9H/Pbgy4dfmVW7PmCEI8+hLI1TT7CMwlXu+TdTu eVnL5WMSzu78e93bdM9HThhSjEDNF22JSrXnE1A0OZMgPlfREoKjHmWIHa7k/M6SQlFJIsKyYft 1Mt7Qzev7XValn4HDA8lGoyiPRN9MJQtw1tgSbbHrk6IYCmGnMnO2+DzLl8WiKRl3i+0Eo0D8D5 7wHs1So9dNiorEHiQaafiFZXlwlfOFtxA8odLEtQKGLRU48lUoVD3TULmSDuVGpu1In4BxCw5lQ tk6Wge9V9NtnKw/+AnQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-09_02,2026-01-08_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 suspectscore=0 spamscore=0 phishscore=0 clxscore=1015 priorityscore=1501 adultscore=0 bulkscore=0 lowpriorityscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601090050 The Hamoa platform supports keeping the PCIe link active across bootloader and kernel handoff. To take advantage of this, introduce a specific configuration (cfg_x1e80100) with link_retain =3D true and update the device match table to use it. Signed-off-by: Krishna Chaitanya Chundru Tested-by: Qiang Yu --- drivers/pci/controller/dwc/pcie-qcom.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/pci/controller/dwc/pcie-qcom.c b/drivers/pci/controlle= r/dwc/pcie-qcom.c index bdd5bdb462c5f6814c8311be96411173456b6b14..975671a0dd4757074600d5a0966= e94220bb18d8c 100644 --- a/drivers/pci/controller/dwc/pcie-qcom.c +++ b/drivers/pci/controller/dwc/pcie-qcom.c @@ -1531,6 +1531,12 @@ static const struct qcom_pcie_cfg cfg_sc8280xp =3D { .no_l0s =3D true, }; =20 +static const struct qcom_pcie_cfg cfg_x1e80100 =3D { + .ops =3D &ops_1_21_0, + .no_l0s =3D true, + .link_retain =3D true, +}; + static const struct qcom_pcie_cfg cfg_fw_managed =3D { .firmware_managed =3D true, }; @@ -2168,7 +2174,7 @@ static const struct of_device_id qcom_pcie_match[] = =3D { { .compatible =3D "qcom,pcie-sm8450-pcie0", .data =3D &cfg_1_9_0 }, { .compatible =3D "qcom,pcie-sm8450-pcie1", .data =3D &cfg_1_9_0 }, { .compatible =3D "qcom,pcie-sm8550", .data =3D &cfg_1_9_0 }, - { .compatible =3D "qcom,pcie-x1e80100", .data =3D &cfg_sc8280xp }, + { .compatible =3D "qcom,pcie-x1e80100", .data =3D &cfg_x1e80100 }, { } }; =20 --=20 2.34.1