this was wrong and was corrected at the end of last year in rev 1.140.
Before then a 64 bit BAR was not enforced as the test was wrong.
It turns out there exist 82598 parts which have a 32 bit BAR so change
the test to only require a memory BAR and not a 64 bit memory BAR.
Problem reported by Robert Blacquiere. ok mikeb@
-/* $OpenBSD: if_ix.c,v 1.150 2017/01/24 03:57:35 dlg Exp $ */
+/* $OpenBSD: if_ix.c,v 1.151 2017/04/24 13:20:46 jsg Exp $ */
/******************************************************************************
int val;
val = pci_conf_read(pa->pa_pc, pa->pa_tag, PCIR_BAR(0));
- if (PCI_MAPREG_TYPE(val) != PCI_MAPREG_TYPE_MEM ||
- PCI_MAPREG_MEM_TYPE(val) != PCI_MAPREG_MEM_TYPE_64BIT) {
+ if (PCI_MAPREG_TYPE(val) != PCI_MAPREG_TYPE_MEM) {
printf(": mmba is not mem space\n");
return (ENXIO);
}