diff options
author | Ezequiel Garcia <ezequiel.garcia@free-electrons.com> | 2013-07-26 09:17:49 -0400 |
---|---|---|
committer | Jason Cooper <jason@lakedaemon.net> | 2013-08-06 10:10:41 -0400 |
commit | b22503a9c3bd8a3512fa4daf2c6c456d12db34de (patch) | |
tree | 3db9abf96e87b842a7dc1f01c9cbc3ca4fa7d06a | |
parent | 11be65472a427dcf7a11ab6e3e3628f1c6768b5b (diff) |
PCI: mvebu: Check valid base address before port setup
This driver does not fail to probe when it cannot obtain
a port base address. Therefore, add a check for NULL base address
before setting up the port, which prevents a kernel panic in such
cases.
Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
Tested-by: Andrew Lunn <andrew@lunn.ch>
Tested-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
-rw-r--r-- | drivers/pci/host/pci-mvebu.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/pci/host/pci-mvebu.c b/drivers/pci/host/pci-mvebu.c index 424a7b8e040f..338691b616d9 100644 --- a/drivers/pci/host/pci-mvebu.c +++ b/drivers/pci/host/pci-mvebu.c | |||
@@ -662,6 +662,8 @@ static int __init mvebu_pcie_setup(int nr, struct pci_sys_data *sys) | |||
662 | 662 | ||
663 | for (i = 0; i < pcie->nports; i++) { | 663 | for (i = 0; i < pcie->nports; i++) { |
664 | struct mvebu_pcie_port *port = &pcie->ports[i]; | 664 | struct mvebu_pcie_port *port = &pcie->ports[i]; |
665 | if (!port->base) | ||
666 | continue; | ||
665 | mvebu_pcie_setup_hw(port); | 667 | mvebu_pcie_setup_hw(port); |
666 | } | 668 | } |
667 | 669 | ||