Merge branch 'master' of /home/davem/src/GIT/linux-2.6/
This commit is contained in:
@@ -341,7 +341,7 @@ static int smsc9420_eeprom_send_cmd(struct smsc9420_pdata *pd, u32 op)
|
||||
do {
|
||||
msleep(1);
|
||||
e2cmd = smsc9420_reg_read(pd, E2P_CMD);
|
||||
} while ((e2cmd & E2P_CMD_EPC_BUSY_) && (timeout--));
|
||||
} while ((e2cmd & E2P_CMD_EPC_BUSY_) && (--timeout));
|
||||
|
||||
if (!timeout) {
|
||||
smsc_info(HW, "TIMED OUT");
|
||||
@@ -413,6 +413,7 @@ static int smsc9420_ethtool_get_eeprom(struct net_device *dev,
|
||||
}
|
||||
|
||||
memcpy(data, &eeprom_data[eeprom->offset], len);
|
||||
eeprom->magic = SMSC9420_EEPROM_MAGIC;
|
||||
eeprom->len = len;
|
||||
return 0;
|
||||
}
|
||||
@@ -423,6 +424,9 @@ static int smsc9420_ethtool_set_eeprom(struct net_device *dev,
|
||||
struct smsc9420_pdata *pd = netdev_priv(dev);
|
||||
int ret;
|
||||
|
||||
if (eeprom->magic != SMSC9420_EEPROM_MAGIC)
|
||||
return -EINVAL;
|
||||
|
||||
smsc9420_eeprom_enable_access(pd);
|
||||
smsc9420_eeprom_send_cmd(pd, E2P_CMD_EPC_CMD_EWEN_);
|
||||
ret = smsc9420_eeprom_write_location(pd, eeprom->offset, *data);
|
||||
|
Reference in New Issue
Block a user