diff options
author | Andi Kleen <ak@suse.de> | 2006-09-26 04:52:40 -0400 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2006-09-26 04:52:40 -0400 |
commit | 5e544d618f0fb21011f36f28d5e3952b9dc109d2 (patch) | |
tree | a91d6e5c640da473204bc48eb7b310fd3d82cd91 /arch/i386/pci/init.c | |
parent | a15da49debaf7f09460a886b0ecd08588410715e (diff) |
[PATCH] i386/x86-64: PCI: split probing and initialization of type 1 config space access
First probe if type1/2 accesses work, but then only initialize them at the end.
This is useful for a later patch that needs this information inbetween.
Signed-off-by: Andi Kleen <ak@suse.de>
Diffstat (limited to 'arch/i386/pci/init.c')
-rw-r--r-- | arch/i386/pci/init.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/i386/pci/init.c b/arch/i386/pci/init.c index 51087a9d9172..d028e1b05c36 100644 --- a/arch/i386/pci/init.c +++ b/arch/i386/pci/init.c | |||
@@ -6,8 +6,13 @@ | |||
6 | in the right sequence from here. */ | 6 | in the right sequence from here. */ |
7 | static __init int pci_access_init(void) | 7 | static __init int pci_access_init(void) |
8 | { | 8 | { |
9 | int type = 0; | ||
10 | |||
11 | #ifdef CONFIG_PCI_DIRECT | ||
12 | type = pci_direct_probe(); | ||
13 | #endif | ||
9 | #ifdef CONFIG_PCI_MMCONFIG | 14 | #ifdef CONFIG_PCI_MMCONFIG |
10 | pci_mmcfg_init(); | 15 | pci_mmcfg_init(type); |
11 | #endif | 16 | #endif |
12 | if (raw_pci_ops) | 17 | if (raw_pci_ops) |
13 | return 0; | 18 | return 0; |
@@ -21,7 +26,7 @@ static __init int pci_access_init(void) | |||
21 | * fails. | 26 | * fails. |
22 | */ | 27 | */ |
23 | #ifdef CONFIG_PCI_DIRECT | 28 | #ifdef CONFIG_PCI_DIRECT |
24 | pci_direct_init(); | 29 | pci_direct_init(type); |
25 | #endif | 30 | #endif |
26 | return 0; | 31 | return 0; |
27 | } | 32 | } |