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