DM9000: Allow randomised ethernet address
Ben Dooks [Thu, 24 Feb 2011 03:17:12 +0000 (03:17 +0000)]
Allow randomised ethernet address if the device does not have a valid
EEPROM or pre-set MAC address.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

drivers/net/dm9000.c

index 2d4c4fc..c309355 100644 (file)
@@ -1592,10 +1592,15 @@ dm9000_probe(struct platform_device *pdev)
                        ndev->dev_addr[i] = ior(db, i+DM9000_PAR);
        }
 
-       if (!is_valid_ether_addr(ndev->dev_addr))
+       if (!is_valid_ether_addr(ndev->dev_addr)) {
                dev_warn(db->dev, "%s: Invalid ethernet MAC address. Please "
                         "set using ifconfig\n", ndev->name);
 
+               random_ether_addr(ndev->dev_addr);
+               mac_src = "random";
+       }
+
+
        platform_set_drvdata(pdev, ndev);
        ret = register_netdev(ndev);