Flush shadow RAM to save updates to ASF related bits for 82573 controllers.
These bits are past the first 63 words of NVM.
Signed-off-by: Mallikarjuna R Chilakala <[EMAIL PROTECTED]>
Signed-off-by: Ganesh Venkatesan <[EMAIL PROTECTED]>
Signed-off-by: John Ronciak <[EMAIL PROTECTED]>
diff -up netdev-2.6/drivers/net/e1000/e1000_ethtool.c
netdev-2.6.new/drivers/net/e1000/e1000_ethtool.c
--- netdev-2.6/drivers/net/e1000/e1000_ethtool.c 2005-08-04
17:44:43.000000000 -0700
+++ netdev-2.6.new/drivers/net/e1000/e1000_ethtool.c 2005-08-04
17:44:45.000000000 -0700
@@ -547,8 +547,10 @@ e1000_set_eeprom(struct net_device *netd
ret_val = e1000_write_eeprom(hw, first_word,
last_word - first_word + 1, eeprom_buff);
- /* Update the checksum over the first part of the EEPROM if needed */
- if((ret_val == 0) && first_word <= EEPROM_CHECKSUM_REG)
+ /* Update the checksum over the first part of the EEPROM if needed
+ * and flush shadow RAM for 82573 conrollers */
+ if((ret_val == 0) && ((first_word <= EEPROM_CHECKSUM_REG) ||
+ (hw->mac_type == e1000_82573)))
e1000_update_eeprom_checksum(hw);
kfree(eeprom_buff);
diff -up netdev-2.6/drivers/net/e1000/e1000_hw.c
netdev-2.6.new/drivers/net/e1000/e1000_hw.c
--- netdev-2.6/drivers/net/e1000/e1000_hw.c 2005-08-04 17:44:43.000000000
-0700
+++ netdev-2.6.new/drivers/net/e1000/e1000_hw.c 2005-08-04 17:44:45.000000000
-0700
@@ -717,6 +717,7 @@ e1000_init_hw(struct e1000_hw *hw)
default:
break;
case e1000_82571:
+ case e1000_82572:
ctrl = E1000_READ_REG(hw, TXDCTL1);
ctrl &= ~E1000_TXDCTL_WTHRESH;
ctrl |= E1000_TXDCTL_COUNT_DESC | E1000_TXDCTL_FULL_TX_DESC_WB;
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html