[Midnightbsd-cvs] src [8893] trunk/sys/dev/mxge/if_mxge.c: mxge(4) improvements.

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Mon Sep 26 18:32:56 EDT 2016


Revision: 8893
          http://svnweb.midnightbsd.org/src/?rev=8893
Author:   laffer1
Date:     2016-09-26 18:32:56 -0400 (Mon, 26 Sep 2016)
Log Message:
-----------
mxge(4) improvements. cut off 10ms for device attach when possible

Modified Paths:
--------------
    trunk/sys/dev/mxge/if_mxge.c

Modified: trunk/sys/dev/mxge/if_mxge.c
===================================================================
--- trunk/sys/dev/mxge/if_mxge.c	2016-09-26 22:31:47 UTC (rev 8892)
+++ trunk/sys/dev/mxge/if_mxge.c	2016-09-26 22:32:56 UTC (rev 8893)
@@ -290,11 +290,12 @@
 #define MXGE_NEXT_STRING(p) while(ptr < limit && *ptr++)
 
 	char *ptr, *limit;
-	int i, found_mac;
+	int i, found_mac, found_sn2;
 
 	ptr = sc->eeprom_strings;
 	limit = sc->eeprom_strings + MXGE_EEPROM_STRINGS_SIZE;
 	found_mac = 0;
+	found_sn2 = 0;
 	while (ptr < limit && *ptr != '\0') {
 		if (memcmp(ptr, "MAC=", 4) == 0) {
 			ptr += 1;
@@ -310,10 +311,16 @@
 			ptr += 3;
 			strncpy(sc->product_code_string, ptr,
 				sizeof (sc->product_code_string) - 1);
-		} else if (memcmp(ptr, "SN=", 3) == 0) {
+		} else if (!found_sn2 && (memcmp(ptr, "SN=", 3) == 0)) {
 			ptr += 3;
 			strncpy(sc->serial_number_string, ptr,
 				sizeof (sc->serial_number_string) - 1);
+		} else if (memcmp(ptr, "SN2=", 4) == 0) {
+			/* SN2 takes precedence over SN */
+			ptr += 4;
+			found_sn2 = 1;
+			strncpy(sc->serial_number_string, ptr,
+				sizeof (sc->serial_number_string) - 1);
 		}
 		MXGE_NEXT_STRING(ptr);
 	}
@@ -580,9 +587,10 @@
 
 	/* 
 	 * Run a DMA test which watches for unaligned completions and
-	 * aborts on the first one seen.
+	 * aborts on the first one seen.  Not required on Z8ES or newer.
 	 */
-
+	if (pci_get_revid(sc->dev) >= MXGE_PCI_REV_Z8ES)
+		return 0;
 	status = mxge_dma_test(sc, MXGEFW_CMD_UNALIGNED_TEST);
 	if (status == 0)
 		return 0; /* keep the aligned firmware */



More information about the Midnightbsd-cvs mailing list