svn commit: r204382 - user/jmallett/octeon/sys/mips/cavium

Juli Mallett jmallett at FreeBSD.org
Sat Feb 27 01:17:24 UTC 2010


Author: jmallett
Date: Sat Feb 27 01:17:24 2010
New Revision: 204382
URL: http://svn.freebsd.org/changeset/base/204382

Log:
  Fix octeon_board_real() for the Portwell CAM-0100 on my desk.

Modified:
  user/jmallett/octeon/sys/mips/cavium/octeon_machdep.c

Modified: user/jmallett/octeon/sys/mips/cavium/octeon_machdep.c
==============================================================================
--- user/jmallett/octeon/sys/mips/cavium/octeon_machdep.c	Sat Feb 27 01:16:34 2010	(r204381)
+++ user/jmallett/octeon/sys/mips/cavium/octeon_machdep.c	Sat Feb 27 01:17:24 2010	(r204382)
@@ -873,8 +873,9 @@ int octeon_chip_rev_major = 0, octeon_ch
 static octeon_boot_descriptor_t *app_desc_ptr;
 static cvmx_bootinfo_t *cvmx_desc_ptr;
 
-#define OCTEON_BOARD_TYPE_NONE 0
-#define OCTEON_BOARD_TYPE_SIM  1
+#define OCTEON_BOARD_TYPE_NONE 			0
+#define OCTEON_BOARD_TYPE_SIM  			1
+#define	OCTEON_BOARD_TYPE_CN3010_EVB_HS5	11
 
 #define OCTEON_CLOCK_MIN     (100 * 1000 * 1000)
 #define OCTEON_CLOCK_MAX     (800 * 1000 * 1000)
@@ -886,11 +887,23 @@ static cvmx_bootinfo_t *cvmx_desc_ptr;
 int
 octeon_board_real(void)
 {
-	if ((octeon_board_type == OCTEON_BOARD_TYPE_NONE) ||
-	    (octeon_board_type == OCTEON_BOARD_TYPE_SIM) ||
-	    !octeon_board_rev_major)
+	switch (octeon_board_type) {
+	case OCTEON_BOARD_TYPE_NONE:
+	case OCTEON_BOARD_TYPE_SIM:
 		return 0;
-	return 1;
+	case OCTEON_BOARD_TYPE_CN3010_EVB_HS5:
+		/*
+		 * XXX
+		 * The CAM-0100 identifies itself as type 11, revision 0.0,
+		 * despite its being rather real.  Disable the revision check
+		 * for type 11.
+		 */
+		return 1;
+	default:
+		if (octeon_board_rev_major == 0)
+			return 0;
+		return 1;
+	}
 }
 
 static void


More information about the svn-src-user mailing list