diff options
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/dm9000.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/dm9000.c b/drivers/net/dm9000.c index 631e0d9f2e40..e6bdbd3a6796 100644 --- a/drivers/net/dm9000.c +++ b/drivers/net/dm9000.c | |||
@@ -559,6 +559,13 @@ dm9000_probe(struct platform_device *pdev) | |||
559 | for (i = 0; i < 6; i++) | 559 | for (i = 0; i < 6; i++) |
560 | ndev->dev_addr[i] = db->srom[i]; | 560 | ndev->dev_addr[i] = db->srom[i]; |
561 | 561 | ||
562 | if (!is_valid_ether_addr(ndev->dev_addr)) { | ||
563 | /* try reading from mac */ | ||
564 | |||
565 | for (i = 0; i < 6; i++) | ||
566 | ndev->dev_addr[i] = ior(db, i+DM9000_PAR); | ||
567 | } | ||
568 | |||
562 | if (!is_valid_ether_addr(ndev->dev_addr)) | 569 | if (!is_valid_ether_addr(ndev->dev_addr)) |
563 | printk("%s: Invalid ethernet MAC address. Please " | 570 | printk("%s: Invalid ethernet MAC address. Please " |
564 | "set using ifconfig\n", ndev->name); | 571 | "set using ifconfig\n", ndev->name); |