aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/e100.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/e100.c b/drivers/net/e100.c
index 25cc20e415da..1c918309539f 100644
--- a/drivers/net/e100.c
+++ b/drivers/net/e100.c
@@ -2391,6 +2391,7 @@ static struct ethtool_ops e100_ethtool_ops = {
2391 .phys_id = e100_phys_id, 2391 .phys_id = e100_phys_id,
2392 .get_stats_count = e100_get_stats_count, 2392 .get_stats_count = e100_get_stats_count,
2393 .get_ethtool_stats = e100_get_ethtool_stats, 2393 .get_ethtool_stats = e100_get_ethtool_stats,
2394 .get_perm_addr = ethtool_op_get_perm_addr,
2394}; 2395};
2395 2396
2396static int e100_do_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd) 2397static int e100_do_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
@@ -2541,7 +2542,8 @@ static int __devinit e100_probe(struct pci_dev *pdev,
2541 e100_phy_init(nic); 2542 e100_phy_init(nic);
2542 2543
2543 memcpy(netdev->dev_addr, nic->eeprom, ETH_ALEN); 2544 memcpy(netdev->dev_addr, nic->eeprom, ETH_ALEN);
2544 if(!is_valid_ether_addr(netdev->dev_addr)) { 2545 memcpy(netdev->perm_addr, nic->eeprom, ETH_ALEN);
2546 if(!is_valid_ether_addr(netdev->perm_addr)) {
2545 DPRINTK(PROBE, ERR, "Invalid MAC address from " 2547 DPRINTK(PROBE, ERR, "Invalid MAC address from "
2546 "EEPROM, aborting.\n"); 2548 "EEPROM, aborting.\n");
2547 err = -EAGAIN; 2549 err = -EAGAIN;