summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNagarjuna Kristam <nkristam@nvidia.com>2025-09-11 11:30:22 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-10-15 11:56:36 +0200
commit2f7357b15d0a6c1c11efa7a07d4e3c9a656b70cf (patch)
treec93866753e51ac86fdaa83f480c41cc9050b24dd
parent695f23561fd0e9cdee40e4607b079332863935d4 (diff)
downloadlinux-2f7357b15d0a6c1c11efa7a07d4e3c9a656b70cf.tar.gz
linux-2f7357b15d0a6c1c11efa7a07d4e3c9a656b70cf.tar.bz2
linux-2f7357b15d0a6c1c11efa7a07d4e3c9a656b70cf.zip
PCI: tegra194: Fix duplicate PLL disable in pex_ep_event_pex_rst_assert()
[ Upstream commit 4f152338e384a3a47dd61909e1457539fa93f5a4 ] During PERST# assertion tegra_pcie_bpmp_set_pll_state() is currently called twice. pex_ep_event_pex_rst_assert() should do the opposite of pex_ep_event_pex_rst_deassert(), so it is obvious that the duplicate tegra_pcie_bpmp_set_pll_state() is a mistake, and that the duplicate tegra_pcie_bpmp_set_pll_state() call should instead be a call to tegra_pcie_bpmp_set_ctrl_state(). With this, the uninitialization sequence also matches that of tegra_pcie_unconfig_controller(). Fixes: a54e19073718 ("PCI: tegra194: Add Tegra234 PCIe support") Signed-off-by: Nagarjuna Kristam <nkristam@nvidia.com> [cassel: improve commit log] Signed-off-by: Niklas Cassel <cassel@kernel.org> Link: https://patch.msgid.link/20250911093021.1454385-2-cassel@kernel.org [mani: added Fixes tag] Signed-off-by: Manivannan Sadhasivam <mani@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/pci/controller/dwc/pcie-tegra194.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/pci/controller/dwc/pcie-tegra194.c b/drivers/pci/controller/dwc/pcie-tegra194.c
index 0839454fe499..5100d2a53b8a 100644
--- a/drivers/pci/controller/dwc/pcie-tegra194.c
+++ b/drivers/pci/controller/dwc/pcie-tegra194.c
@@ -1720,9 +1720,9 @@ static void pex_ep_event_pex_rst_assert(struct tegra_pcie_dw *pcie)
ret);
}
- ret = tegra_pcie_bpmp_set_pll_state(pcie, false);
+ ret = tegra_pcie_bpmp_set_ctrl_state(pcie, false);
if (ret)
- dev_err(pcie->dev, "Failed to turn off UPHY: %d\n", ret);
+ dev_err(pcie->dev, "Failed to disable controller: %d\n", ret);
pcie->ep_state = EP_STATE_DISABLED;
dev_dbg(pcie->dev, "Uninitialization of endpoint is completed\n");