From: Sven Schnelle We should use a random mac address if the EEPROM doesn't contain a valid one. This makes life on Boards with unprogrammed EEPROM devices easier. Signed-off-by: Sven Schnelle Cc: Haavard Skinnemoen Cc: Jeff Garzik Signed-off-by: Andrew Morton --- drivers/net/macb.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff -puN drivers/net/macb.c~macb-use-random-mac-if-stored-address-in-eeprom-is-invalid drivers/net/macb.c --- a/drivers/net/macb.c~macb-use-random-mac-if-stored-address-in-eeprom-is-invalid +++ a/drivers/net/macb.c @@ -80,8 +80,12 @@ static void __init macb_get_hwaddr(struc addr[4] = top & 0xff; addr[5] = (top >> 8) & 0xff; - if (is_valid_ether_addr(addr)) + if (is_valid_ether_addr(addr)) { memcpy(bp->dev->dev_addr, addr, sizeof(addr)); + } else { + dev_info(&bp->pdev->dev, "invalid hw address, using random\n"); + random_ether_addr(bp->dev->dev_addr); + } } static int macb_mdio_read(struct mii_bus *bus, int mii_id, int regnum) _