| 1 |
--- linux/drivers/pci/search.c.ORIG 2007-11-07 14:44:41.000000000 -0500
|
| 2 |
+++ linux/drivers/pci/search.c 2007-11-07 14:48:02.000000000 -0500
|
| 3 |
@@ -145,7 +145,9 @@ struct pci_dev * pci_get_slot(struct pci
|
| 4 |
* device resides and the logical device number within that slot
|
| 5 |
* in case of multi-function devices.
|
| 6 |
*
|
| 7 |
- * Note: the bus/slot search is limited to PCI domain (segment) 0.
|
| 8 |
+ * Note: the bus/slot search is limited to PCI domain (segment) 0,
|
| 9 |
+ * EXCEPT on Alpha which requires ALL domains to be searched,
|
| 10 |
+ * thank you VERY much.
|
| 11 |
*
|
| 12 |
* Given a PCI bus and slot/function number, the desired PCI device
|
| 13 |
* is located in system global list of PCI devices. If the device
|
| 14 |
@@ -159,8 +161,12 @@ struct pci_dev * pci_get_bus_and_slot(un
|
| 15 |
struct pci_dev *dev = NULL;
|
| 16 |
|
| 17 |
while ((dev = pci_get_device(PCI_ANY_ID, PCI_ANY_ID, dev)) != NULL) {
|
| 18 |
- if (pci_domain_nr(dev->bus) == 0 &&
|
| 19 |
- (dev->bus->number == bus && dev->devfn == devfn))
|
| 20 |
+ if (
|
| 21 |
+#ifndef __alpha__
|
| 22 |
+ pci_domain_nr(dev->bus) == 0 &&
|
| 23 |
+#endif
|
| 24 |
+ (dev->bus->number == bus && dev->devfn == devfn)
|
| 25 |
+ )
|
| 26 |
return dev;
|
| 27 |
}
|
| 28 |
return NULL;
|