summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarius <marius@FreeBSD.org>2008-10-27 22:10:01 +0000
committermarius <marius@FreeBSD.org>2008-10-27 22:10:01 +0000
commitf240fccf5e5e2cc486accceeac3a7605250030c5 (patch)
tree736a4a7519825135aa86479028869f35eadfb082
parent24d351e408ca3541980f5a9ba5b66aff04a5ba70 (diff)
downloadFreeBSD-src-f240fccf5e5e2cc486accceeac3a7605250030c5.zip
FreeBSD-src-f240fccf5e5e2cc486accceeac3a7605250030c5.tar.gz
Do as the Linux tg3 driver does and enable MSI support also
for the BCM5714 revision A0 when in a multi-port configuration and unconditionally for the remainder of the class of BCM575X and beyond chips. This was prodded by mav and is based on a suggestion and a patch submitted by jhb. Reviewed by: jhb MFC after: 2 months
-rw-r--r--sys/dev/bge/if_bge.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/sys/dev/bge/if_bge.c b/sys/dev/bge/if_bge.c
index 2553a32..b7d304b 100644
--- a/sys/dev/bge/if_bge.c
+++ b/sys/dev/bge/if_bge.c
@@ -2328,10 +2328,11 @@ bge_can_use_msi(struct bge_softc *sc)
int can_use_msi = 0;
switch (sc->bge_asicrev) {
+ case BGE_ASICREV_BCM5714_A0:
case BGE_ASICREV_BCM5714:
/*
- * Apparently, MSI doesn't work when this chip is configured
- * in single-port mode.
+ * Apparently, MSI doesn't work when these chips are
+ * configured in single-port mode.
*/
if (bge_has_multiple_ports(sc))
can_use_msi = 1;
@@ -2341,10 +2342,9 @@ bge_can_use_msi(struct bge_softc *sc)
sc->bge_chiprev != BGE_CHIPREV_5750_BX)
can_use_msi = 1;
break;
- case BGE_ASICREV_BCM5752:
- case BGE_ASICREV_BCM5780:
- can_use_msi = 1;
- break;
+ default:
+ if (BGE_IS_575X_PLUS(sc))
+ can_use_msi = 1;
}
return (can_use_msi);
}
OpenPOWER on IntegriCloud