Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
pci
hotplug-pci.c
Go to the documentation of this file.
1
/* Core PCI functionality used only by PCI hotplug */
2
3
#include <linux/pci.h>
4
#include <linux/export.h>
5
#include "
pci.h
"
6
7
int
__ref
pci_hp_add_bridge
(
struct
pci_dev
*
dev
)
8
{
9
struct
pci_bus
*
parent
= dev->
bus
;
10
int
pass, busnr,
start
= parent->
busn_res
.start;
11
int
end
= parent->
busn_res
.end;
12
13
for
(busnr = start; busnr <=
end
; busnr++) {
14
if
(!
pci_find_bus
(
pci_domain_nr
(parent), busnr))
15
break
;
16
}
17
if
(busnr-- > end) {
18
printk
(
KERN_ERR
"No bus number available for hot-added bridge %s\n"
,
19
pci_name(dev));
20
return
-1;
21
}
22
for
(pass = 0; pass < 2; pass++)
23
busnr =
pci_scan_bridge
(parent, dev, busnr, pass);
24
if
(!dev->
subordinate
)
25
return
-1;
26
27
return
0;
28
}
29
EXPORT_SYMBOL_GPL
(
pci_hp_add_bridge
);
Generated on Thu Jan 10 2013 14:13:59 for Linux Kernel by
1.8.2