diff options
author | Andi Kleen <ak@suse.de> | 2006-10-05 18:47:22 +0200 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2006-10-05 18:47:22 +0200 |
commit | f015c6c4d733f68cbc1c5d231bb158abaa5c9606 (patch) | |
tree | 9ffa7a284f8265723bf46cb19557443bf1e68ea2 /arch/i386/pci | |
parent | 70d666d6ae9724c0a08434c20f8830c90a635bd3 (diff) | |
download | op-kernel-dev-f015c6c4d733f68cbc1c5d231bb158abaa5c9606.zip op-kernel-dev-f015c6c4d733f68cbc1c5d231bb158abaa5c9606.tar.gz |
[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.c | 2 | ||||
-rw-r--r-- | arch/i386/pci/init.c | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/i386/pci/direct.c b/arch/i386/pci/direct.c index 5acf0b4..431c9a5 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 d028e1b..b21b6da 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); |