summaryrefslogtreecommitdiff
path: root/include/pci.h
diff options
context:
space:
mode:
authorTim Harvey <tharvey@gateworks.com>2017-05-12 19:58:41 (GMT)
committerStefano Babic <sbabic@denx.de>2017-05-31 08:09:03 (GMT)
commit6ecbe13756711baa795180d1a63b7a73a835c303 (patch)
tree9d058033c7645548c5fbeb2842c22ec613c70896 /include/pci.h
parentda384fc67a30ff4685b679a822ef005a8f1aeaa7 (diff)
downloadu-boot-6ecbe13756711baa795180d1a63b7a73a835c303.tar.xz
drivers: pci: imx: add imx_pcie_remove function
There is no dedicated reset signal wired up for the MX6QDL thus if the bootloader enables the link we need some special handling to get the core back into a state where it is safe to touch it for configuration. While there has been some special handling in the Linux kernel to do this, it was removed in 4.11 thus we need to do it properly in the bootloader and therefore without this if you enable PCI in the bootloader you will hang while booting the 4.11 kernel. This puts the PCIe controller back into a safe state for the kernel driver before launching the kernel. Signed-off-by: Tim Harvey <tharvey@gateworks.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Tested-by: Peter Senna Tschudin <peter.senna@collabora.com>
Diffstat (limited to 'include/pci.h')
-rw-r--r--include/pci.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/pci.h b/include/pci.h
index d3c955e..c8ef997 100644
--- a/include/pci.h
+++ b/include/pci.h
@@ -754,6 +754,10 @@ int pci_last_busno(void);
extern void pci_mpc85xx_init (struct pci_controller *hose);
#endif
+#ifdef CONFIG_PCIE_IMX
+extern void imx_pcie_remove(void);
+#endif
+
#if !defined(CONFIG_DM_PCI) || defined(CONFIG_DM_PCI_COMPAT)
/**
* pci_write_bar32() - Write the address of a BAR including control bits