summaryrefslogtreecommitdiffstats
path: root/drivers/net/r6040.c
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2009-01-08 15:04:45 +0000
committerDavid S. Miller <davem@davemloft.net>2009-01-11 00:03:38 -0800
commit9f1136182f732f6e847fc43bd88b579739d5c211 (patch)
tree97f375925a18791b266c444443096555c31bf9db /drivers/net/r6040.c
parent58854c6b411e9e9f46b39bd7092022f639c41904 (diff)
r6040: generate random ethernet MAC address when not initialized
This patch makes the ethernet driver assign a random ethernet MAC address when the bootloader does not set it. Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/r6040.c')
-rw-r--r--drivers/net/r6040.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/r6040.c b/drivers/net/r6040.c
index b59837e8075..8b5d50927eb 100644
--- a/drivers/net/r6040.c
+++ b/drivers/net/r6040.c
@@ -1153,8 +1153,10 @@ static int __devinit r6040_init_one(struct pci_dev *pdev,
/* Some bootloader/BIOSes do not initialize
* MAC address, warn about that */
- if (!(adrp[0] || adrp[1] || adrp[2]))
- printk(KERN_WARNING DRV_NAME ": MAC address not initialized\n");
+ if (!(adrp[0] || adrp[1] || adrp[2])) {
+ printk(KERN_WARNING DRV_NAME ": MAC address not initialized, generating random\n");
+ random_ether_addr(dev->dev_addr);
+ }
/* Link new device into r6040_root_dev */
lp->pdev = pdev;