[PATCH] PCI: Give PCI config access initialization a defined ordering
[linux-2.6.git] / arch / i386 / pci / init.c
1 #include <linux/config.h>
2 #include <linux/pci.h>
3 #include <linux/init.h>
4 #include "pci.h"
5
6 /* arch_initcall has too random ordering, so call the initializers
7    in the right sequence from here. */
8 static __init int pci_access_init(void)
9 {
10 #ifdef CONFIG_PCI_MMCONFIG
11         pci_mmcfg_init();
12 #endif
13         if (raw_pci_ops)
14                 return 0;
15 #ifdef CONFIG_PCI_BIOS
16         pci_pcbios_init();
17 #endif
18         if (raw_pci_ops)
19                 return 0;
20 #ifdef CONFIG_PCI_DIRECT
21         pci_direct_init();
22 #endif
23         return 0;
24 }
25 arch_initcall(pci_access_init);