Author: sbruno
Date: Tue Mar 19 11:07:12 2013
New Revision: 248494
URL: http://svnweb.freebsd.org/changeset/base/248494

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
  Obtained from:        Yahoo! Inc.

Modified:
  stable/9/sys/dev/ciss/ciss.c
Directory Properties:
  stable/9/sys/   (props changed)
  stable/9/sys/dev/   (props changed)

Modified: stable/9/sys/dev/ciss/ciss.c
==============================================================================
--- stable/9/sys/dev/ciss/ciss.c        Tue Mar 19 07:47:51 2013        
(r248493)
+++ stable/9/sys/dev/ciss/ciss.c        Tue Mar 19 11:07:12 2013        
(r248494)
@@ -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:
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to