net: macb: support of_get_mac_address new ERR_PTR error
authorPetr Štetiar <ynezz@true.cz>
Fri, 3 May 2019 14:27:08 +0000 (16:27 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 6 May 2019 04:47:07 +0000 (21:47 -0700)
There was NVMEM support added directly to of_get_mac_address, and it uses
nvmem_get_mac_address under the hood, so we can remove it. As
of_get_mac_address can now return ERR_PTR encoded error values, adjust to
that as well.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/cadence/macb_main.c

index bd6a62f..5d5c9d7 100644 (file)
@@ -4137,15 +4137,13 @@ static int macb_probe(struct platform_device *pdev)
                bp->rx_intr_mask |= MACB_BIT(RXUBR);
 
        mac = of_get_mac_address(np);
-       if (mac) {
+       if (PTR_ERR(mac) == -EPROBE_DEFER) {
+               err = -EPROBE_DEFER;
+               goto err_out_free_netdev;
+       } else if (!IS_ERR(mac)) {
                ether_addr_copy(bp->dev->dev_addr, mac);
        } else {
-               err = nvmem_get_mac_address(&pdev->dev, bp->dev->dev_addr);
-               if (err) {
-                       if (err == -EPROBE_DEFER)
-                               goto err_out_free_netdev;
-                       macb_get_hwaddr(bp);
-               }
+               macb_get_hwaddr(bp);
        }
 
        err = of_get_phy_mode(np);