changeset 772:f9b51f6b4eaf

i82559 eeprom writing fix
author msalter
date Thu, 27 Feb 2003 15:06:56 +0000
parents 710133d0d4c0
children 6ba7ef90493e
files packages/devs/eth/intel/i82559/current/ChangeLog packages/devs/eth/intel/i82559/current/src/if_i82559.c
diffstat 2 files changed, 8 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/packages/devs/eth/intel/i82559/current/ChangeLog
+++ b/packages/devs/eth/intel/i82559/current/ChangeLog
@@ -1,3 +1,8 @@
+2003-02-27  Mark Salter  <msalter@redhat.com>
+
+	* src/if_i82559.c (eth_set_mac_address): Correct writing
+	of wrong address to EEPROM.
+
 2003-02-22  Mark Salter  <msalter@redhat.com>
 
 	* src/if_i82559.c: Fix endian issues with EEPROM writing.
--- a/packages/devs/eth/intel/i82559/current/src/if_i82559.c
+++ b/packages/devs/eth/intel/i82559/current/src/if_i82559.c
@@ -3356,9 +3356,9 @@ eth_set_mac_address(struct i82559* p_i82
             eeprom_burn[i] = read_eeprom( ioaddr, i, addr_length );
 
         // now set this address in the device eeprom ....
-        eeprom_burn[0] = p_i82559->mac_address[0] | (p_i82559->mac_address[1] << 8);
-        eeprom_burn[1] = p_i82559->mac_address[2] | (p_i82559->mac_address[3] << 8);
-        eeprom_burn[2] = p_i82559->mac_address[4] | (p_i82559->mac_address[5] << 8);
+        eeprom_burn[0] = addr[0] | (addr[1] << 8);
+        eeprom_burn[1] = addr[2] | (addr[3] << 8);
+        eeprom_burn[2] = addr[4] | (addr[5] << 8);
 
         // No idea what these were for...
         // eeprom_burn[20] &= 0xfe;