net: use eth_hw_addr_random() and reset addr_assign_type
[deliverable/linux.git] / drivers / net / ethernet / microchip / enc28j60.c
index 1d6b7ce3e1eedc1981252706ef94b9fe59b91766..6118bdad244f272b6cc359ca9306c47fa6dfd7a0 100644 (file)
@@ -527,6 +527,7 @@ static int enc28j60_set_mac_address(struct net_device *dev, void *addr)
        if (!is_valid_ether_addr(address->sa_data))
                return -EADDRNOTAVAIL;
 
+       dev->addr_assign_type &= ~NET_ADDR_RANDOM;
        memcpy(dev->dev_addr, address->sa_data, dev->addr_len);
        return enc28j60_set_hw_macaddr(dev);
 }
@@ -1575,7 +1576,7 @@ static int __devinit enc28j60_probe(struct spi_device *spi)
                ret = -EIO;
                goto error_irq;
        }
-       random_ether_addr(dev->dev_addr);
+       eth_hw_addr_random(dev);
        enc28j60_set_hw_macaddr(dev);
 
        /* Board setup must set the relevant edge trigger type;
This page took 0.025494 seconds and 5 git commands to generate.