diff options
Diffstat (limited to 'drivers/pci/search.c')
-rw-r--r-- | drivers/pci/search.c | 32 |
1 files changed, 1 insertions, 31 deletions
diff --git a/drivers/pci/search.c b/drivers/pci/search.c index 710d4ea69568..e8cb5051c311 100644 --- a/drivers/pci/search.c +++ b/drivers/pci/search.c | |||
@@ -29,7 +29,7 @@ pci_find_upstream_pcie_bridge(struct pci_dev *pdev) | |||
29 | if (pdev->is_pcie) | 29 | if (pdev->is_pcie) |
30 | return NULL; | 30 | return NULL; |
31 | while (1) { | 31 | while (1) { |
32 | if (!pdev->bus->parent) | 32 | if (pci_is_root_bus(pdev->bus)) |
33 | break; | 33 | break; |
34 | pdev = pdev->bus->self; | 34 | pdev = pdev->bus->self; |
35 | /* a p2p bridge */ | 35 | /* a p2p bridge */ |
@@ -115,36 +115,6 @@ pci_find_next_bus(const struct pci_bus *from) | |||
115 | 115 | ||
116 | #ifdef CONFIG_PCI_LEGACY | 116 | #ifdef CONFIG_PCI_LEGACY |
117 | /** | 117 | /** |
118 | * pci_find_slot - locate PCI device from a given PCI slot | ||
119 | * @bus: number of PCI bus on which desired PCI device resides | ||
120 | * @devfn: encodes number of PCI slot in which the desired PCI | ||
121 | * device resides and the logical device number within that slot | ||
122 | * in case of multi-function devices. | ||
123 | * | ||
124 | * Given a PCI bus and slot/function number, the desired PCI device | ||
125 | * is located in system global list of PCI devices. If the device | ||
126 | * is found, a pointer to its data structure is returned. If no | ||
127 | * device is found, %NULL is returned. | ||
128 | * | ||
129 | * NOTE: Do not use this function any more; use pci_get_slot() instead, as | ||
130 | * the PCI device returned by this function can disappear at any moment in | ||
131 | * time. | ||
132 | */ | ||
133 | struct pci_dev *pci_find_slot(unsigned int bus, unsigned int devfn) | ||
134 | { | ||
135 | struct pci_dev *dev = NULL; | ||
136 | |||
137 | while ((dev = pci_get_device(PCI_ANY_ID, PCI_ANY_ID, dev)) != NULL) { | ||
138 | if (dev->bus->number == bus && dev->devfn == devfn) { | ||
139 | pci_dev_put(dev); | ||
140 | return dev; | ||
141 | } | ||
142 | } | ||
143 | return NULL; | ||
144 | } | ||
145 | EXPORT_SYMBOL(pci_find_slot); | ||
146 | |||
147 | /** | ||
148 | * pci_find_device - begin or continue searching for a PCI device by vendor/device id | 118 | * pci_find_device - begin or continue searching for a PCI device by vendor/device id |
149 | * @vendor: PCI vendor id to match, or %PCI_ANY_ID to match all vendor ids | 119 | * @vendor: PCI vendor id to match, or %PCI_ANY_ID to match all vendor ids |
150 | * @device: PCI device id to match, or %PCI_ANY_ID to match all device ids | 120 | * @device: PCI device id to match, or %PCI_ANY_ID to match all device ids |