On Friday 27 Jul 2012 12:44:28 Michael Brown wrote:
> > This means that if there's a MAC in eeprom, the is_valid_ether_addr
> > function is never reached, and so the autoloaded MAC is never checked
> > for validity.
> 
> Yes, that's correct.
> 
> Could you try the attached patch, and build with DEBUG=intel?  This should
> dump out the entire EEPROM contents on screen, which would be useful to
> know. (If you have a serial port and a null-modem cable, you can capture
> the output by enabling CONSOLE_SERIAL in config/console.h; otherwise a
> digital camera is probably easiest.)

And this time with the patch actually attached.

Michael
diff --git a/src/drivers/net/intel.c b/src/drivers/net/intel.c
index 353fc97..3206ff1 100644
--- a/src/drivers/net/intel.c
+++ b/src/drivers/net/intel.c
@@ -194,6 +194,15 @@ static int intel_fetch_mac_eeprom ( struct intel_nic *intel,
 		return rc;
 	}
 
+	//
+	if ( intel->port == 0 ) {
+		uint8_t buf[256];
+		nvs_read ( &intel->eeprom, 0, buf, sizeof ( buf ) );
+		DBGC ( intel, "INTEL %p EEPROM contents:\n", intel );
+		DBGC_HDA ( intel, 0, buf, sizeof ( buf ) );
+		DBGC_PAUSE ( intel );
+	}
+
 	/* Adjust MAC address for multi-port devices */
 	hw_addr[ETH_ALEN-1] ^= intel->port;
 
_______________________________________________
ipxe-devel mailing list
[email protected]
https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel

Reply via email to