summaryrefslogtreecommitdiffstats
path: root/sys/dev/siis
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2010-03-20 04:40:15 +0000
committermav <mav@FreeBSD.org>2010-03-20 04:40:15 +0000
commitce0f033be2a3df59917db5ade3c14f1ff4942f05 (patch)
tree3e0b2a3a6e0b638b73e98ff9680426a70de53cac /sys/dev/siis
parent964c1781bd27b89bd7d7e3fa60d2e05a58b86bbc (diff)
downloadFreeBSD-src-ce0f033be2a3df59917db5ade3c14f1ff4942f05.zip
FreeBSD-src-ce0f033be2a3df59917db5ade3c14f1ff4942f05.tar.gz
Enable MSI by default for SiI3124.
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 29afa2a..f03fba9 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),
OpenPOWER on IntegriCloud