[PATCH V3 19/21] PCI: tegra194: Free up EP resources during remove()

From: Vidya Sagar
Date: Thu Oct 13 2022 - 14:45:09 EST


Free up the resources during remove() that were acquired by the DesignWare
driver for the endpoint mode during proble().

Signed-off-by: Vidya Sagar <vidyas@xxxxxxxxxx>
---
V3:
* This is a new patch in this series

drivers/pci/controller/dwc/pcie-tegra194.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/pci/controller/dwc/pcie-tegra194.c b/drivers/pci/controller/dwc/pcie-tegra194.c
index 3baf1a26fe68..c88c36d85ee5 100644
--- a/drivers/pci/controller/dwc/pcie-tegra194.c
+++ b/drivers/pci/controller/dwc/pcie-tegra194.c
@@ -2383,6 +2383,7 @@ static int tegra_pcie_dw_probe(struct platform_device *pdev)
static int tegra_pcie_dw_remove(struct platform_device *pdev)
{
struct tegra_pcie_dw *pcie = platform_get_drvdata(pdev);
+ struct dw_pcie_ep *ep = &pcie->pci.ep;

if (pcie->of_data->mode == DW_PCIE_RC_TYPE) {
if (!pcie->link_state && !pcie->slot_pluggable)
@@ -2396,6 +2397,7 @@ static int tegra_pcie_dw_remove(struct platform_device *pdev)
} else {
disable_irq(pcie->pex_rst_irq);
pex_ep_event_pex_rst_assert(pcie);
+ dw_pcie_ep_exit(ep);
}

pm_runtime_disable(pcie->dev);
--
2.17.1