summaryrefslogtreecommitdiffstats
path: root/sys/dev/hptrr/hptrr_osm_bsd.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/hptrr/hptrr_osm_bsd.c')
-rw-r--r--sys/dev/hptrr/hptrr_osm_bsd.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/dev/hptrr/hptrr_osm_bsd.c b/sys/dev/hptrr/hptrr_osm_bsd.c
index eae952e..78c8b60 100644
--- a/sys/dev/hptrr/hptrr_osm_bsd.c
+++ b/sys/dev/hptrr/hptrr_osm_bsd.c
@@ -34,6 +34,9 @@
#include <dev/hptrr/os_bsd.h>
#include <dev/hptrr/hptintf.h>
+static int attach_generic = 1;
+TUNABLE_INT("hw.hptrr.attach_generic", &attach_generic);
+
static int hpt_probe(device_t dev)
{
PCI_ID pci_id;
@@ -41,6 +44,9 @@ static int hpt_probe(device_t dev)
int i;
PHBA hba;
+ /* Some of supported chips are used not only by HPT. */
+ if (pci_get_vendor(dev) != 0x1103 && !attach_generic)
+ return (ENXIO);
for (him = him_list; him; him = him->next) {
for (i=0; him->get_supported_device_id(i, &pci_id); i++) {
if ((pci_get_vendor(dev) == pci_id.vid) &&
OpenPOWER on IntegriCloud