PCI: qcom: Remove ASPM L0s support for MSM8996 SoC

Though I couldn't confirm ASPM L0s support with the Qcom hardware team, a
bug report from Dmitry suggests that L0s is broken on this legacy SoC.
Hence, remove L0s support from the Root Port Link Capabilities in this SoC.

Since qcom_pcie_clear_aspm_l0s() is now used by more than one SoC config,
call it from qcom_pcie_host_init() instead.

Reported-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Closes: https://lore.kernel.org/linux-pci/4cp5pzmlkkht2ni7us6p3edidnk25l45xrp6w3fxguqcvhq2id@wjqqrdpkypkf
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>
Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://patch.msgid.link/20251126081718.8239-1-mani@kernel.org

authored by Manivannan Sadhasivam and committed by Bjorn Helgaas 0cc13256 8f0b4cce

Changed files
+3 -1
drivers
pci
controller
+3 -1
drivers/pci/controller/dwc/pcie-qcom.c
··· 1047 1047 writel(WR_NO_SNOOP_OVERRIDE_EN | RD_NO_SNOOP_OVERRIDE_EN, 1048 1048 pcie->parf + PARF_NO_SNOOP_OVERRIDE); 1049 1049 1050 - qcom_pcie_clear_aspm_l0s(pcie->pci); 1051 1050 qcom_pcie_clear_hpc(pcie->pci); 1052 1051 1053 1052 return 0; ··· 1315 1316 goto err_disable_phy; 1316 1317 } 1317 1318 1319 + qcom_pcie_clear_aspm_l0s(pcie->pci); 1320 + 1318 1321 qcom_ep_reset_deassert(pcie); 1319 1322 1320 1323 if (pcie->cfg->ops->config_sid) { ··· 1465 1464 1466 1465 static const struct qcom_pcie_cfg cfg_2_3_2 = { 1467 1466 .ops = &ops_2_3_2, 1467 + .no_l0s = true, 1468 1468 }; 1469 1469 1470 1470 static const struct qcom_pcie_cfg cfg_2_3_3 = {