summaryrefslogtreecommitdiffstats
path: root/sys/dev/ciss/cissreg.h
diff options
context:
space:
mode:
authorscottl <scottl@FreeBSD.org>2009-09-16 23:10:10 +0000
committerscottl <scottl@FreeBSD.org>2009-09-16 23:10:10 +0000
commit7780e2c81f386e967efdc0944036426a38d5631c (patch)
tree8a3a29a21d65f17163c499149bd66f07cf867f36 /sys/dev/ciss/cissreg.h
parented3e2dff4b8015f6b024c7e85202510ca35c93cd (diff)
downloadFreeBSD-src-7780e2c81f386e967efdc0944036426a38d5631c.zip
FreeBSD-src-7780e2c81f386e967efdc0944036426a38d5631c.tar.gz
Make MSI and PERFORMANT interrupts work correctly. Only require the minimum
number of MSIX interrupts that are needed, and don't strictly check for 4. Enable enough interrupt mask bits so that the controller will generate interrupts in PERFORMANT mode. This fixes the hang-on-boot issues that people were seeing with newer controllers.
Diffstat (limited to 'sys/dev/ciss/cissreg.h')
-rw-r--r--sys/dev/ciss/cissreg.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/ciss/cissreg.h b/sys/dev/ciss/cissreg.h
index 196307b..9ed631b 100644
--- a/sys/dev/ciss/cissreg.h
+++ b/sys/dev/ciss/cissreg.h
@@ -736,7 +736,8 @@ struct ciss_bmic_flush_cache {
#define CISS_TL_PERF_CLEAR_INT(sc) CISS_TL_SIMPLE_WRITE(sc, CISS_TL_SIMPLE_ODC, CISS_TL_SIMPLE_ODC_CLEAR)
#define CISS_CYCLE_MASK 0x00000001
-#define CISS_MSI_COUNT 4
+/* Only need one MSI/MSI-X vector */
+#define CISS_MSI_COUNT 1
#define CISS_TL_SIMPLE_DISABLE_INTERRUPTS(sc) \
CISS_TL_SIMPLE_WRITE(sc, CISS_TL_SIMPLE_IMR, \
OpenPOWER on IntegriCloud