Re: [PATCH v2 04/10] PCI: tegra194: Do not skip no-link Root Port remove cleanup
From: Frank Li
Date: Wed Oct 21 2026 - 11:29:43 EST
On Wed, Oct 21, 2026 at 11:43:43AM +0530, Manikanta Maddireddy wrote:
> tegra_pcie_config_rp() deinitializes the controller and disables runtime PM
> when link training fails, then probe treats -ENOMEDIUM as success so the
> driver can remain bound without a link.
>
> remove() returned immediately when the Root Port link was down. That skips
> common cleanup such as tegra_bpmp_put() and deasserting the refclk-select
> GPIO. Keep link-dependent controller teardown conditional, but always run
> common remove cleanup.
>
> Fixes: 56e15a238d92 ("PCI: tegra: Add Tegra194 PCIe support")
> Signed-off-by: Manikanta Maddireddy <mmaddireddy@xxxxxxxxxx>
> ---
Reviewed-by: Frank Li <Frank.Li@xxxxxxx>
> Changes V1 -> V2: None
>
> drivers/pci/controller/dwc/pcie-tegra194.c | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/pci/controller/dwc/pcie-tegra194.c b/drivers/pci/controller/dwc/pcie-tegra194.c
> index 0f895c766a71..fb8084cef38b 100644
> --- a/drivers/pci/controller/dwc/pcie-tegra194.c
> +++ b/drivers/pci/controller/dwc/pcie-tegra194.c
> @@ -2352,19 +2352,19 @@ static void tegra_pcie_dw_remove(struct platform_device *pdev)
> struct dw_pcie_ep *ep = &pcie->pci.ep;
>
> if (pcie->of_data->mode == DW_PCIE_RC_TYPE) {
> - if (!pcie->link_state)
> - return;
> -
> - debugfs_remove_recursive(pcie->debugfs);
> - tegra_pcie_deinit_controller(pcie);
> - pm_runtime_put_sync(pcie->dev);
> + if (pcie->link_state) {
> + debugfs_remove_recursive(pcie->debugfs);
> + tegra_pcie_deinit_controller(pcie);
> + pm_runtime_put_sync(pcie->dev);
> + pm_runtime_disable(pcie->dev);
> + }
> } else {
> disable_irq(pcie->pex_rst_irq);
> pex_ep_event_pex_rst_assert(pcie);
> dw_pcie_ep_deinit(ep);
> + pm_runtime_disable(pcie->dev);
> }
>
> - pm_runtime_disable(pcie->dev);
> tegra_bpmp_put(pcie->bpmp);
> if (pcie->pex_refclk_sel_gpiod)
> gpiod_set_value(pcie->pex_refclk_sel_gpiod, 0);
> --
> 2.34.1
>