svn commit: r248841 - releng/8.4/sys/dev/ciss

Sean Bruno sbruno at FreeBSD.org
Thu Mar 28 18:06:10 UTC 2013


Author: sbruno
Date: Thu Mar 28 18:06:09 2013
New Revision: 248841
URL: http://svnweb.freebsd.org/changeset/base/248841

Log:
  MFC r247279
  
  The 5300 series ciss(4) board does not work in performant mode with our
  currnet initialization sequence.  Set it to simple mode only so that
  systems can be updated from stable/7 to newer installations.
  
  At some point, we should figure out why we cannot initialize performant
  mode on this board.
  
  PR:		kern/153361
  Reviewed by:	scottl
  Approved by:	re (marius@)

Modified:
  releng/8.4/sys/dev/ciss/ciss.c
Directory Properties:
  releng/8.4/sys/   (props changed)
  releng/8.4/sys/dev/   (props changed)
  releng/8.4/sys/dev/ciss/   (props changed)

Modified: releng/8.4/sys/dev/ciss/ciss.c
==============================================================================
--- releng/8.4/sys/dev/ciss/ciss.c	Thu Mar 28 18:03:39 2013	(r248840)
+++ releng/8.4/sys/dev/ciss/ciss.c	Thu Mar 28 18:06:09 2013	(r248841)
@@ -281,6 +281,7 @@ TUNABLE_INT("hw.ciss.force_interrupt", &
 #define CISS_BOARD_SA5		1
 #define CISS_BOARD_SA5B		2
 #define CISS_BOARD_NOMSI	(1<<4)
+#define CISS_BOARD_SIMPLE       (1<<5)
 
 static struct
 {
@@ -289,7 +290,8 @@ static struct
     int		flags;
     char	*desc;
 } ciss_vendor_data[] = {
-    { 0x0e11, 0x4070, CISS_BOARD_SA5|CISS_BOARD_NOMSI,	"Compaq Smart Array 5300" },
+    { 0x0e11, 0x4070, CISS_BOARD_SA5|CISS_BOARD_NOMSI|CISS_BOARD_SIMPLE,
+                                                        "Compaq Smart Array 5300" },
     { 0x0e11, 0x4080, CISS_BOARD_SA5B|CISS_BOARD_NOMSI,	"Compaq Smart Array 5i" },
     { 0x0e11, 0x4082, CISS_BOARD_SA5B|CISS_BOARD_NOMSI,	"Compaq Smart Array 532" },
     { 0x0e11, 0x4083, CISS_BOARD_SA5B|CISS_BOARD_NOMSI,	"HP Smart Array 5312" },
@@ -681,8 +683,15 @@ ciss_init_pci(struct ciss_softc *sc)
 	supported_methods = CISS_TRANSPORT_METHOD_PERF;
 	break;
     default:
-	supported_methods = sc->ciss_cfg->supported_methods;
-	break;
+        /*
+         * Override the capabilities of the BOARD and specify SIMPLE
+         * MODE 
+         */
+        if (ciss_vendor_data[i].flags & CISS_BOARD_SIMPLE)
+                supported_methods = CISS_TRANSPORT_METHOD_SIMPLE;
+        else
+                supported_methods = sc->ciss_cfg->supported_methods;
+        break;
     }
 
 setup:


More information about the svn-src-all mailing list