aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386/pci
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2006-10-05 18:47:22 +0200
committerAndi Kleen <andi@basil.nowhere.org>2006-10-05 18:47:22 +0200
commitf015c6c4d733f68cbc1c5d231bb158abaa5c9606 (patch)
tree9ffa7a284f8265723bf46cb19557443bf1e68ea2 /arch/i386/pci
parent[PATCH] x86-64: Calgary IOMMU: print PCI bus numbers in hex (diff)
downloadlinux-dev-f015c6c4d733f68cbc1c5d231bb158abaa5c9606.tar.xz
linux-dev-f015c6c4d733f68cbc1c5d231bb158abaa5c9606.zip
[PATCH] i386: Fix PCI BIOS config space access
Got broken by a earlier change. Also add a printk when no pci config method could be found. Cc: gregkh@suse.de Signed-off-by: Andi Kleen <ak@suse.de>
Diffstat (limited to 'arch/i386/pci')
-rw-r--r--arch/i386/pci/direct.c2
-rw-r--r--arch/i386/pci/init.c4
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/i386/pci/direct.c b/arch/i386/pci/direct.c
index 5acf0b4743cf..431c9a51b157 100644
--- a/arch/i386/pci/direct.c
+++ b/arch/i386/pci/direct.c
@@ -256,6 +256,8 @@ static int __init pci_check_type2(void)
void __init pci_direct_init(int type)
{
+ if (type == 0)
+ return;
printk(KERN_INFO "PCI: Using configuration type %d\n", type);
if (type == 1)
raw_pci_ops = &pci_direct_conf1;
diff --git a/arch/i386/pci/init.c b/arch/i386/pci/init.c
index d028e1b05c36..b21b6da8ab1d 100644
--- a/arch/i386/pci/init.c
+++ b/arch/i386/pci/init.c
@@ -28,6 +28,10 @@ static __init int pci_access_init(void)
#ifdef CONFIG_PCI_DIRECT
pci_direct_init(type);
#endif
+ if (!raw_pci_ops)
+ printk(KERN_ERR
+ "PCI: Fatal: No config space access function found\n");
+
return 0;
}
arch_initcall(pci_access_init);