summaryrefslogtreecommitdiff
path: root/sys/dev/siis
diff options
context:
space:
mode:
authorAlexander Motin <mav@FreeBSD.org>2010-03-20 04:40:15 +0000
committerAlexander Motin <mav@FreeBSD.org>2010-03-20 04:40:15 +0000
commitf81100fd11badf7ee9b5b9484861e64f9a16b4a5 (patch)
tree3e0b2a3a6e0b638b73e98ff9680426a70de53cac /sys/dev/siis
parenta5cef7a1ce3533e0eb730d718a9a5b59ef8c230e (diff)
Notes
Diffstat (limited to 'sys/dev/siis')
-rw-r--r--sys/dev/siis/siis.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/sys/dev/siis/siis.c b/sys/dev/siis/siis.c
index 29afa2a40527..f03fba980275 100644
--- a/sys/dev/siis/siis.c
+++ b/sys/dev/siis/siis.c
@@ -94,14 +94,15 @@ static struct {
int ports;
int quirks;
#define SIIS_Q_SNTF 1
+#define SIIS_Q_NOMSI 2
} siis_ids[] = {
{0x31241095, "SiI3124", 4, 0},
{0x31248086, "SiI3124", 4, 0},
- {0x31321095, "SiI3132", 2, SIIS_Q_SNTF},
- {0x02421095, "SiI3132", 2, SIIS_Q_SNTF},
- {0x02441095, "SiI3132", 2, SIIS_Q_SNTF},
- {0x31311095, "SiI3131", 1, SIIS_Q_SNTF},
- {0x35311095, "SiI3531", 1, SIIS_Q_SNTF},
+ {0x31321095, "SiI3132", 2, SIIS_Q_SNTF|SIIS_Q_NOMSI},
+ {0x02421095, "SiI3132", 2, SIIS_Q_SNTF|SIIS_Q_NOMSI},
+ {0x02441095, "SiI3132", 2, SIIS_Q_SNTF|SIIS_Q_NOMSI},
+ {0x31311095, "SiI3131", 1, SIIS_Q_SNTF|SIIS_Q_NOMSI},
+ {0x35311095, "SiI3531", 1, SIIS_Q_SNTF|SIIS_Q_NOMSI},
{0, NULL, 0, 0}
};
@@ -249,7 +250,7 @@ static int
siis_setup_interrupt(device_t dev)
{
struct siis_controller *ctlr = device_get_softc(dev);
- int msi = 0;
+ int msi = ctlr->quirks & SIIS_Q_NOMSI ? 0 : 1;
/* Process hints. */
resource_int_value(device_get_name(dev),