From: jsg Date: Mon, 24 Apr 2017 13:20:46 +0000 (+0000) Subject: Since rev 1.1 ix has attempted to require a 64 bit BAR, the test for X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=6c7295367d6fb5f9c1e063419ba8bcdc14694a22;p=openbsd Since rev 1.1 ix has attempted to require a 64 bit BAR, the test for 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@ --- diff --git a/sys/dev/pci/if_ix.c b/sys/dev/pci/if_ix.c index b24326f26e1..b46163ec37a 100644 --- a/sys/dev/pci/if_ix.c +++ b/sys/dev/pci/if_ix.c @@ -1,4 +1,4 @@ -/* $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 $ */ /****************************************************************************** @@ -1550,8 +1550,7 @@ ixgbe_allocate_pci_resources(struct ix_softc *sc) 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); }