Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 31 Jul 2017 00:05:50 +0000 (UTC)
From:      Scott Long <scottl@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r321737 - head/sys/dev/mpr
Message-ID:  <201707310005.v6V05omg019657@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: scottl
Date: Mon Jul 31 00:05:49 2017
New Revision: 321737
URL: https://svnweb.freebsd.org/changeset/base/321737

Log:
      Don't re-parse PCI IDs in order to set card-specific flags, use
      the flags field in the PCIID table.

Modified:
  head/sys/dev/mpr/mpr_pci.c

Modified: head/sys/dev/mpr/mpr_pci.c
==============================================================================
--- head/sys/dev/mpr/mpr_pci.c	Mon Jul 31 00:03:42 2017	(r321736)
+++ head/sys/dev/mpr/mpr_pci.c	Mon Jul 31 00:05:49 2017	(r321737)
@@ -125,23 +125,32 @@ struct mpr_ident {
 	{ MPI2_MFGPAGE_VENDORID_LSI, MPI26_MFGPAGE_DEVID_SAS3324_2,
 	    0xffff, 0xffff, 0, "Avago Technologies (LSI) SAS3324_2" },
 	{ MPI2_MFGPAGE_VENDORID_LSI, MPI26_MFGPAGE_DEVID_SAS3408,
-	    0xffff, 0xffff, 0, "Avago Technologies (LSI) SAS3408" },
+	    0xffff, 0xffff, MPR_FLAGS_GEN35_IOC,
+	    "Avago Technologies (LSI) SAS3408" },
 	{ MPI2_MFGPAGE_VENDORID_LSI, MPI26_MFGPAGE_DEVID_SAS3416,
-	    0xffff, 0xffff, 0, "Avago Technologies (LSI) SAS3416" },
+	    0xffff, 0xffff, MPR_FLAGS_GEN35_IOC,
+	    "Avago Technologies (LSI) SAS3416" },
 	{ MPI2_MFGPAGE_VENDORID_LSI, MPI26_MFGPAGE_DEVID_SAS3508,
-	    0xffff, 0xffff, 0, "Avago Technologies (LSI) SAS3508" },
+	    0xffff, 0xffff, MPR_FLAGS_GEN35_IOC,
+	    "Avago Technologies (LSI) SAS3508" },
 	{ MPI2_MFGPAGE_VENDORID_LSI, MPI26_MFGPAGE_DEVID_SAS3508_1,
-	    0xffff, 0xffff, 0, "Avago Technologies (LSI) SAS3508_1" },
+	    0xffff, 0xffff, MPR_FLAGS_GEN35_IOC,
+	    "Avago Technologies (LSI) SAS3508_1" },
 	{ MPI2_MFGPAGE_VENDORID_LSI, MPI26_MFGPAGE_DEVID_SAS3516,
-	    0xffff, 0xffff, 0, "Avago Technologies (LSI) SAS3516" },
+	    0xffff, 0xffff, MPR_FLAGS_GEN35_IOC,
+	    "Avago Technologies (LSI) SAS3516" },
 	{ MPI2_MFGPAGE_VENDORID_LSI, MPI26_MFGPAGE_DEVID_SAS3516_1,
-	    0xffff, 0xffff, 0, "Avago Technologies (LSI) SAS3516_1" },
+	    0xffff, 0xffff, MPR_FLAGS_GEN35_IOC,
+	    "Avago Technologies (LSI) SAS3516_1" },
 	{ MPI2_MFGPAGE_VENDORID_LSI, MPI26_MFGPAGE_DEVID_SAS3616,
-	    0xffff, 0xffff, 0, "Avago Technologies (LSI) SAS3616" },
+	    0xffff, 0xffff, MPR_FLAGS_GEN35_IOC,
+	    "Avago Technologies (LSI) SAS3616" },
 	{ MPI2_MFGPAGE_VENDORID_LSI, MPI26_MFGPAGE_DEVID_SAS3708,
-	    0xffff, 0xffff, 0, "Avago Technologies (LSI) SAS3708" },
+	    0xffff, 0xffff, MPR_FLAGS_GEN35_IOC,
+	    "Avago Technologies (LSI) SAS3708" },
 	{ MPI2_MFGPAGE_VENDORID_LSI, MPI26_MFGPAGE_DEVID_SAS3716,
-	    0xffff, 0xffff, 0, "Avago Technologies (LSI) SAS3716" },
+	    0xffff, 0xffff, MPR_FLAGS_GEN35_IOC,
+	    "Avago Technologies (LSI) SAS3716" },
 	{ 0, 0, 0, 0, 0, NULL }
 };
 
@@ -196,19 +205,6 @@ mpr_pci_attach(device_t dev)
 
 	/* Twiddle basic PCI config bits for a sanity check */
 	pci_enable_busmaster(dev);
-
-	/* Set flag if this is a Gen3.5 IOC */
-	if ((m->device == MPI26_MFGPAGE_DEVID_SAS3508) ||
-	    (m->device == MPI26_MFGPAGE_DEVID_SAS3508_1) ||
-	    (m->device == MPI26_MFGPAGE_DEVID_SAS3408) ||
-	    (m->device == MPI26_MFGPAGE_DEVID_SAS3516) ||
-	    (m->device == MPI26_MFGPAGE_DEVID_SAS3516_1) ||
-	    (m->device == MPI26_MFGPAGE_DEVID_SAS3416) ||
-	    (m->device == MPI26_MFGPAGE_DEVID_SAS3716) ||
-	    (m->device == MPI26_MFGPAGE_DEVID_SAS3616) ||
-	    (m->device == MPI26_MFGPAGE_DEVID_SAS3708)) {
-		sc->mpr_flags |= MPR_FLAGS_GEN35_IOC;
-	}
 
 	for (i = 0; i < PCI_MAXMAPS_0; i++) {
 		sc->mpr_regs_rid = PCIR_BAR(i);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201707310005.v6V05omg019657>