]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/net/sis900.c
Merge branches 'irq/sparseirq' and 'linus' into irq/core
[linux-2.6-omap-h63xx.git] / drivers / net / sis900.c
index 6cbefcae9ac2c844e6334390cb33a7ef8ddb3006..be4465bc0a693d642c23ec465e3ce0ad035ad625 100644 (file)
@@ -509,10 +509,10 @@ static int __devinit sis900_probe(struct pci_dev *pci_dev,
        else
                ret = sis900_get_mac_addr(pci_dev, net_dev);
 
-       if (ret == 0) {
-               printk(KERN_WARNING "%s: Cannot read MAC address.\n", dev_name);
-               ret = -ENODEV;
-               goto err_unmap_rx;
+       if (!ret || !is_valid_ether_addr(net_dev->dev_addr)) {
+               random_ether_addr(net_dev->dev_addr);
+               printk(KERN_WARNING "%s: Unreadable or invalid MAC address,"
+                               "using random generated one\n", dev_name);
        }
 
        /* 630ET : set the mii access mode as software-mode */