diff options
-rw-r--r-- | drivers/pci/host/pcie-iproc-bcma.c | 5 | ||||
-rw-r--r-- | drivers/pci/host/pcie-iproc.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/drivers/pci/host/pcie-iproc-bcma.c b/drivers/pci/host/pcie-iproc-bcma.c index ec6edaf..8ce0890 100644 --- a/drivers/pci/host/pcie-iproc-bcma.c +++ b/drivers/pci/host/pcie-iproc-bcma.c @@ -55,6 +55,11 @@ static int iproc_pcie_bcma_probe(struct bcma_device *bdev) pcie->dev = dev; pcie->base = bdev->io_addr; + if (!pcie->base) { + dev_err(dev, "no controller registers\n"); + return -ENOMEM; + } + pcie->base_addr = bdev->addr; res_mem.start = bdev->addr_s[0]; diff --git a/drivers/pci/host/pcie-iproc.c b/drivers/pci/host/pcie-iproc.c index c41d6bd..12a5156 100644 --- a/drivers/pci/host/pcie-iproc.c +++ b/drivers/pci/host/pcie-iproc.c @@ -462,7 +462,7 @@ int iproc_pcie_setup(struct iproc_pcie *pcie, struct list_head *res) void *sysdata; struct pci_bus *bus; - if (!pcie || !pcie->dev || !pcie->base) + if (!pcie || !pcie->dev) return -EINVAL; dev = pcie->dev; |