[PATCH] x86_64: Don't sanity check Type 1 PCI bus access on newer systems
Horus systems don't have anything on bus 0 which makes the Type 1 sanity checks fail. Use the DMI BIOS year to check for newer systems and always assume Type 1 works on them. I used 2001 as an pretty arbitary cutoff year. Cc: gregkh@suse.de Cc: Navin Boppuri <navin.boppuri@newisys.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
fa47dd0ba3
commit
ec0f08eeea
|
@ -4,6 +4,7 @@
|
|||
|
||||
#include <linux/pci.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/dmi.h>
|
||||
#include "pci.h"
|
||||
|
||||
/*
|
||||
|
@ -188,6 +189,10 @@ static int __init pci_sanity_check(struct pci_raw_ops *o)
|
|||
|
||||
if (pci_probe & PCI_NO_CHECKS)
|
||||
return 1;
|
||||
/* Assume Type 1 works for newer systems.
|
||||
This handles machines that don't have anything on PCI Bus 0. */
|
||||
if (dmi_get_year(DMI_BIOS_DATE) >= 2001)
|
||||
return 1;
|
||||
|
||||
for (devfn = 0; devfn < 0x100; devfn++) {
|
||||
if (o->read(0, 0, devfn, PCI_CLASS_DEVICE, 2, &x))
|
||||
|
|
Loading…
Reference in New Issue
Block a user