summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/pci/pcie_dw_imx8.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/pci/pcie_dw_imx8.c b/drivers/pci/pcie_dw_imx8.c
index 7d737a17e3..0d535a3f19 100644
--- a/drivers/pci/pcie_dw_imx8.c
+++ b/drivers/pci/pcie_dw_imx8.c
@@ -243,6 +243,15 @@ static int pcie_dw_imx8_probe(struct udevice *dev)
return 0;
}
+static int pcie_dw_imx8_remove(struct udevice *dev)
+{
+ struct pcie_dw_imx8 *priv = dev_get_priv(dev);
+
+ imx8_pcie_assert_core_reset(priv);
+
+ return 0;
+}
+
static int pcie_dw_imx8_of_to_plat(struct udevice *dev)
{
struct pcie_dw_imx8 *priv = dev_get_priv(dev);
@@ -334,5 +343,6 @@ U_BOOT_DRIVER(pcie_dw_ti) = {
.ops = &pcie_dw_imx8_ops,
.of_to_plat = pcie_dw_imx8_of_to_plat,
.probe = pcie_dw_imx8_probe,
+ .remove = pcie_dw_imx8_remove,
.priv_auto = sizeof(struct pcie_dw_imx8),
};