From: David S. Miller Date: Mon, 14 May 2007 05:01:18 +0000 (-0700) Subject: [SPARC64]: Be more resiliant with PCI I/O space regs. X-Git-Tag: v2.6.22-rc2~111^2~10 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=49d23cfcec5d36a91e118d28148d353bf8f0bc03;p=linux-2.6 [SPARC64]: Be more resiliant with PCI I/O space regs. If we miss on the ranges, just toss the translation up to the parent instead of failing. Signed-off-by: David S. Miller --- diff --git a/arch/sparc64/kernel/of_device.c b/arch/sparc64/kernel/of_device.c index 7455f5d055..16cc46a718 100644 --- a/arch/sparc64/kernel/of_device.c +++ b/arch/sparc64/kernel/of_device.c @@ -537,6 +537,13 @@ static int __init build_one_resource(struct device_node *parent, return 0; } + /* When we miss an I/O space match on PCI, just pass it up + * to the next PCI bridge and/or controller. + */ + if (!strcmp(bus->name, "pci") && + (addr[0] & 0x03000000) == 0x01000000) + return 0; + return 1; }