Hi Tim, Thanks for working on this!
[Adding Peter and Jagan on Cc] On Wed, May 10, 2017 at 1:43 PM, Tim Harvey <thar...@gateworks.com> wrote: > 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 was tested on a Gateworks Ventana board. > > TODO: what is the right arch specific place to hook the remove function? Ideally the pcie_imx.c driver should be converted to driver model and then the .remove can be simply added, just like in Barebox. Take a look at the following PCI drivers that have already been converted to the driver model to use as reference: $ git grep U_BOOT_DRIVER drivers/pci/ drivers/pci/pci-uclass.c:U_BOOT_DRIVER(pci_bridge_drv) = { drivers/pci/pci-uclass.c:U_BOOT_DRIVER(pci_generic_drv) = { drivers/pci/pci_sandbox.c:U_BOOT_DRIVER(pci_sandbox) = { drivers/pci/pci_tegra.c:U_BOOT_DRIVER(pci_tegra) = { drivers/pci/pci_x86.c:U_BOOT_DRIVER(pci_x86) = { drivers/pci/pcie_dw_mvebu.c:U_BOOT_DRIVER(pcie_dw_mvebu) = { drivers/pci/pcie_layerscape.c:U_BOOT_DRIVER(pci_layerscape) = { drivers/pci/pcie_xilinx.c:U_BOOT_DRIVER(pcie_xilinx) = { _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot