diff options
-rw-r--r-- | sys/dev/pci/pci.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/dev/pci/pci.c b/sys/dev/pci/pci.c index c0ed235..2bc9c1c 100644 --- a/sys/dev/pci/pci.c +++ b/sys/dev/pci/pci.c @@ -826,9 +826,14 @@ pci_add_map(device_t pcib, device_t bus, device_t dev, * If base is 0, then we have problems. It is best to ignore * such entries for the moment. These will be allocated later if * the driver specifically requests them. + * + * Similarlly treat maps whose values is the same as the test value + * read back. These maps have had all f's written to them by the + * BIOS in an attempt to disable the resources. */ - if (base == 0) + if (base == 0 || map == testval) return 1; + /* * This code theoretically does the right thing, but has * undesirable side effects in some cases where peripherals |