From 8b5915b08dda13ffe1f70f00322dcc34ce161904 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Wed, 13 Oct 2004 21:03:12 -0700 Subject: [PATCH] Take the whole PCI bus range into account when scanning PCI bridges. A bridge that has been set up by firmware to cover multiple PCI buses but doesn't actually have anything connected behind some of them caused us to use the incorrect maxmimum bus number span when scanning the bridge chip. Problem reported by Tim Saunders, with Russell King suggesting the fix. --- drivers/pci/probe.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index b57fe552411..e88017d6fd3 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -373,7 +373,10 @@ int __devinit pci_scan_bridge(struct pci_bus *bus, struct pci_dev * dev, int max child->bridge_ctl = bctl; cmax = pci_scan_child_bus(child); - if (cmax > max) max = cmax; + if (cmax > max) + max = cmax; + if (child->subordinate > max) + max = child->subordinate; } else { /* * We need to assign a number to this bus which we always -- 2.11.4.GIT