Change the semantics of this call to return the max reserved
bus number instead of just the max assigned bus number.
Signed-off-by: Kristen Carlson Accardi <[email protected]>
drivers/pci/pci.c | 5 +++--
include/linux/pci.h | 1 +
2 files changed, 4 insertions(+), 2 deletions(-)
--- linux-2.6.15-mm.orig/drivers/pci/pci.c
+++ linux-2.6.15-mm/drivers/pci/pci.c
@@ -19,7 +19,6 @@
#include <asm/dma.h> /* isa_dma_bridge_buggy */
#include "pci.h"
-#if 0
/**
* pci_bus_max_busnr - returns maximum PCI bus number of given bus' children
@@ -34,7 +33,7 @@ pci_bus_max_busnr(struct pci_bus* bus)
struct list_head *tmp;
unsigned char max, n;
- max = bus->number;
+ max = bus->subordinate;
list_for_each(tmp, &bus->children) {
n = pci_bus_max_busnr(pci_bus_b(tmp));
if(n > max)
@@ -42,7 +41,9 @@ pci_bus_max_busnr(struct pci_bus* bus)
}
return max;
}
+EXPORT_SYMBOL_GPL(pci_bus_max_busnr);
+#if 0
/**
* pci_max_busnr - returns maximum PCI bus number
*
--- linux-2.6.15-mm.orig/include/linux/pci.h
+++ linux-2.6.15-mm/include/linux/pci.h
@@ -514,6 +514,7 @@ int pci_scan_bridge(struct pci_bus *bus,
void pci_walk_bus(struct pci_bus *top, void (*cb)(struct pci_dev *, void *),
void *userdata);
int pci_cfg_space_size(struct pci_dev *dev);
+unsigned char pci_bus_max_busnr(struct pci_bus* bus);
/* kmem_cache style wrapper around pci_alloc_consistent() */