[ofa-general] [PATCH] libibmad/dump.c: Support link speed and width vendor extensions

Hal Rosenstock hrosenstock at xsigo.com
Tue Nov 13 07:38:43 PST 2007


libibmad/dump.c: Support link speed and width vendor extensions

When decoding values, handle vendor extensions to link speed and width
including accommodating a "documentation" change between IBA 1.2 and
1.2.1

Signed-off-by: Hal Rosenstock <hal at xsigo.com>

diff --git a/libibmad/src/dump.c b/libibmad/src/dump.c
index d743215..9628eba 100644
--- a/libibmad/src/dump.c
+++ b/libibmad/src/dump.c
@@ -1,5 +1,6 @@
 /*
  * Copyright (c) 2004-2007 Voltaire Inc.  All rights reserved.
+ * Copyright (c) 2007 Xsigo Systems Inc.  All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -235,12 +236,21 @@ mad_dump_linkwidthsup(char *buf, int bufsz, void *val, int valsz)
 	case 1:
 		snprintf(buf, bufsz, "1X");
 		break;
+	case 2:
+		snprintf(buf, bufsz, "4X (IBA extension)");
+		break;
 	case 3:
 		snprintf(buf, bufsz, "1X or 4X");
 		break;
+	case 4:
+		snprintf(buf, bufsz, "8X (IBA extension)");
+		break;
 	case 7:
 		snprintf(buf, bufsz, "1X or 4X or 8X");
 		break;
+	case 8:
+		snprintf(buf, bufsz, "12X (IBA extension)");
+		break;
 	case 11:
 		snprintf(buf, bufsz, "1X or 4X or 12X");
 		break;
@@ -304,9 +314,15 @@ mad_dump_linkspeedsup(char *buf, int bufsz, void *val, int valsz)
 	case 1:
 		snprintf(buf, bufsz, "2.5 Gbps");
 		break;
+	case 2:
+		snprintf(buf, bufsz, "5.0 Gbps (IBA extension)");
+		break;
 	case 3:
 		snprintf(buf, bufsz, "2.5 or 5.0 Gbps");
 		break;
+	case 4:
+		snprintf(buf, bufsz, "10.0 Gbps (IBA extension)");
+		break;
 	case 5:
 		snprintf(buf, bufsz, "2.5 or 10.0 Gbps");
 		break;
@@ -329,13 +345,13 @@ mad_dump_linkspeeden(char *buf, int bufsz, void *val, int valsz)
 		snprintf(buf, bufsz, "2.5 Gbps");
 		break;
 	case 2:
-		snprintf(buf, bufsz, "5.0 Gbps");
+		snprintf(buf, bufsz, "5.0 Gbps (IBA extension)");
 		break;
 	case 3:
 		snprintf(buf, bufsz, "2.5 or 5.0 Gbps");
 		break;
 	case 4:
-		snprintf(buf, bufsz, "10.0 Gbps");
+		snprintf(buf, bufsz, "10.0 Gbps (IBA extension)");
 		break;
 	case 5:
 		snprintf(buf, bufsz, "2.5 or 10.0 Gbps");




More information about the general mailing list