Index: linux-2.6.18-rc1-git7/drivers/net/arm/ep93xx_eth.c =================================================================== --- linux-2.6.18-rc1-git7.orig/drivers/net/arm/ep93xx_eth.c +++ linux-2.6.18-rc1-git7/drivers/net/arm/ep93xx_eth.c @@ -536,6 +536,15 @@ static int ep93xx_open(struct net_device if (ep93xx_alloc_buffers(ep)) return -ENOMEM; + if (!memcmp(dev->dev_addr, "\x00\x00\x00\x00\x00\x00", 6)) { + random_ether_addr(dev->dev_addr); + printk(KERN_INFO "%s: generated random MAC address " + "%.2x:%.2x:%.2x:%.2x:%.2x:%.2x.\n", dev->name, + dev->dev_addr[0], dev->dev_addr[1], + dev->dev_addr[2], dev->dev_addr[3], + dev->dev_addr[4], dev->dev_addr[5]); + } + ep93xx_start_hw(dev); spin_lock_init(&ep->rx_lock);