summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryongari <yongari@FreeBSD.org>2009-02-11 00:23:56 +0000
committeryongari <yongari@FreeBSD.org>2009-02-11 00:23:56 +0000
commit7c51c6c0f1a56ae94b85bf91c4212895a2e9827e (patch)
treea910c977c3a0f9d315fb0424925bf43f85579681
parented3597a69687b0a5ae150456beb6c191cffeaaf8 (diff)
downloadFreeBSD-src-7c51c6c0f1a56ae94b85bf91c4212895a2e9827e.zip
FreeBSD-src-7c51c6c0f1a56ae94b85bf91c4212895a2e9827e.tar.gz
Allocating 2 MSI messages do not seem to work on certain controllers
so use just 1 MSI message. This fixes regression introduced in r188381. Tested by: many
-rw-r--r--sys/dev/re/if_re.c3
-rw-r--r--sys/pci/if_rlreg.h2
2 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c
index eb48c89..06d1a45 100644
--- a/sys/dev/re/if_re.c
+++ b/sys/dev/re/if_re.c
@@ -1149,7 +1149,8 @@ re_attach(device_t dev)
if (bootverbose)
device_printf(dev, "MSI count : %d\n", msic);
}
- if (msic == RL_MSI_MESSAGES && msi_disable == 0) {
+ if (msic > 0 && msi_disable == 0) {
+ msic = 1;
if (pci_alloc_msi(dev, &msic) == 0) {
if (msic == RL_MSI_MESSAGES) {
device_printf(dev, "Using %d MSI messages\n",
diff --git a/sys/pci/if_rlreg.h b/sys/pci/if_rlreg.h
index d2f55ce..d3e09bf 100644
--- a/sys/pci/if_rlreg.h
+++ b/sys/pci/if_rlreg.h
@@ -779,7 +779,7 @@ struct rl_stats {
#define RE_RX_DESC_BUFLEN MCLBYTES
#endif
-#define RL_MSI_MESSAGES 2
+#define RL_MSI_MESSAGES 1
#define RL_ADDR_LO(y) ((uint64_t) (y) & 0xFFFFFFFF)
#define RL_ADDR_HI(y) ((uint64_t) (y) >> 32)
OpenPOWER on IntegriCloud