summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPavel Fedin <p.fedin@samsung.com>2015-10-08 10:24:26 +0300
committerRob Herring <robh@kernel.org>2015-10-13 13:30:42 -0500
commitf134f25162e7174ebe63f8aa16810192606eb826 (patch)
tree68496fe469336a2c4c8bd6bc85ce65c139fd3d41
parent4af971064977b00a437c1ed8ead8876db4e3b58a (diff)
downloadlinux-f134f25162e7174ebe63f8aa16810192606eb826.tar.bz2
PCI: of: Ignore resources with failed translation
This patch allows PCI host controller to function even if part of resources is unusable for some reason. An example is non-LPAE kernel on a machine which has some 64-bit resources. Unusable resources will be just skipped instead of a complete failure. Signed-off-by: Pavel Fedin <p.fedin@samsung.com> Signed-off-by: Rob Herring <robh@kernel.org>
-rw-r--r--drivers/of/of_pci.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/of/of_pci.c b/drivers/of/of_pci.c
index 5751dc5b6494..ea7c2b6dfc56 100644
--- a/drivers/of/of_pci.c
+++ b/drivers/of/of_pci.c
@@ -223,8 +223,10 @@ int of_pci_get_host_bridge_resources(struct device_node *dev,
}
err = of_pci_range_to_resource(&range, dev, res);
- if (err)
- goto conversion_failed;
+ if (err) {
+ kfree(res);
+ continue;
+ }
if (resource_type(res) == IORESOURCE_IO) {
if (!io_base) {