net: macb: Try to retrieve MAC addess from nvmem provider
Call of_get_nvmem_mac_address() to fetch the MAC address from an nvmem cell, if one is provided in the device tree. This allows the address to be stored in an I2C EEPROM device for example. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
9217e566bd
commit
aa076e3d22
|
@ -3952,10 +3952,16 @@ static int macb_probe(struct platform_device *pdev)
|
|||
dev->max_mtu = ETH_DATA_LEN;
|
||||
|
||||
mac = of_get_mac_address(np);
|
||||
if (mac)
|
||||
if (mac) {
|
||||
ether_addr_copy(bp->dev->dev_addr, mac);
|
||||
else
|
||||
macb_get_hwaddr(bp);
|
||||
} else {
|
||||
err = of_get_nvmem_mac_address(np, bp->dev->dev_addr);
|
||||
if (err) {
|
||||
if (err == -EPROBE_DEFER)
|
||||
goto err_out_free_netdev;
|
||||
macb_get_hwaddr(bp);
|
||||
}
|
||||
}
|
||||
|
||||
err = of_get_phy_mode(np);
|
||||
if (err < 0) {
|
||||
|
|
Loading…
Reference in a new issue