]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - drivers/net/dm9000x.c
Merge branch 'u-boot-imx/master' into 'u-boot-arm/master'
[karo-tx-uboot.git] / drivers / net / dm9000x.c
index f7170e055460832011de5d8fb28f0a66d22a0f4f..b68d808c74287f010bd29d5a740de617082b60f9 100644 (file)
@@ -342,6 +342,15 @@ static int dm9000_init(struct eth_device *dev, bd_t *bd)
        DM9000_iow(DM9000_ISR, ISR_ROOS | ISR_ROS | ISR_PTS | ISR_PRS);
 
        printf("MAC: %pM\n", dev->enetaddr);
+       if (!is_valid_ether_addr(dev->enetaddr)) {
+#ifdef CONFIG_RANDOM_MACADDR
+               printf("Bad MAC address (uninitialized EEPROM?), randomizing\n");
+               eth_random_enetaddr(dev->enetaddr);
+               printf("MAC: %pM\n", dev->enetaddr);
+#else
+               printf("WARNING: Bad MAC address (uninitialized EEPROM?)\n");
+#endif
+       }
 
        /* fill device MAC address registers */
        for (i = 0, oft = DM9000_PAR; i < 6; i++, oft++)