|
|
@@ -3500,7 +3500,10 @@ static int __init rtl838x_eth_probe(struct platform_device *pdev)
|
|
|
* 1) from device tree data
|
|
|
* 2) from internal registers set by bootloader
|
|
|
*/
|
|
|
- of_get_mac_address(pdev->dev.of_node, mac_addr);
|
|
|
+ err = of_get_mac_address(pdev->dev.of_node, mac_addr);
|
|
|
+ if (err == -EPROBE_DEFER)
|
|
|
+ return err;
|
|
|
+
|
|
|
if (is_valid_ether_addr(mac_addr)) {
|
|
|
rtl838x_set_mac_hw(dev, mac_addr);
|
|
|
} else {
|