PCI: designware: Don't complain missing *config* reg space if va_cfg0 is set
authorMurali Karicheri <m-karicheri2@ti.com>
Tue, 21 Jul 2015 21:54:11 +0000 (17:54 -0400)
committerBjorn Helgaas <bhelgaas@google.com>
Thu, 23 Jul 2015 15:01:30 +0000 (10:01 -0500)
Currently on Keystone SoCs, we always complain:

  keystone-pcie 21021000.pcie: missing *config* reg space

Keystone uses an older version of DesignWare hardware that doesn't have
ATU support.  So va_cfg0_base and va_cfg1_base are already set up in
ks_dw_pcie_host_init() before calling dw_pcie_host_init(), and they point
to the remote config space address va (both same for Keystone).  Add a
check to avoid this boot noise on Keystone.

Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/pci/host/pcie-designware.c

index 69486be7181e18287a8a8bd421055b902233e3c4..b48b8a2c50b9df0933c17361b93d84ef1fc565aa 100644 (file)
@@ -388,7 +388,7 @@ int dw_pcie_host_init(struct pcie_port *pp)
                addrp = of_get_address(np, index, NULL, NULL);
                pp->cfg0_mod_base = of_read_number(addrp, ns);
                pp->cfg1_mod_base = pp->cfg0_mod_base + pp->cfg0_size;
-       } else {
+       } else if (!pp->va_cfg0_base) {
                dev_err(pp->dev, "missing *config* reg space\n");
        }