
Hi Bin,
On Thu, Dec 31, 2015 at 7:32 AM, Bin Meng bmeng.cn@gmail.com wrote:
I also see this behavior on ls1021atwr board. I agree with Simon, the correct fix should fix the PCIe driver to return 0 instead of -EINVAL.
Do you mean like this for imx?
--- a/drivers/pci/pcie_imx.c +++ b/drivers/pci/pcie_imx.c @@ -381,7 +381,7 @@ static int imx_pcie_read_config(struct pci_controller *hose, ret = imx_pcie_addr_valid(d); if (ret) { *val = 0xffffffff; - return ret; + return 0; }
va_address = get_bus_address(d, where);
and like this for layerscape:
--- a/drivers/pci/pcie_layerscape.c +++ b/drivers/pci/pcie_layerscape.c @@ -314,7 +314,7 @@ static int ls_pcie_read_config(struct pci_controller *hose,
if (ls_pcie_addr_valid(hose, d)) { *val = 0xffffffff; - return -EINVAL; + return 0; }
if (PCI_BUS(d) == hose->first_busno)
Regards,
Fabio Estevam