Subject: Re: [PATCH v1] tg3: optionally get mac address from devicetree

From: Andrew Lunn <[email-masked]>
Date: Tue, 13 Nov 2018 22:09:13 +0100

> +static int tg3_of_get_macaddr(struct tg3 *tp)
>  {
> -	struct net_device *dev = tp->dev;
> -	struct pci_dev *pdev = tp->pdev;
> -	struct device_node *dp = pci_device_to_OF_node(pdev);
> -	const unsigned char *addr;
> -	int len;
> +	struct device_node *np = pci_device_to_OF_node(tp->pdev);
> +	const void *mac;
>  
> -	addr = of_get_property(dp, "local-mac-address", &len);
> -	if (addr && len == ETH_ALEN) {
> -		memcpy(dev->dev_addr, addr, ETH_ALEN);
> -		return 0;
> -	}
> -	return -ENODEV;
> +	if (!np)
> +		return -ENODEV;
> +	mac = of_get_mac_address(np);
> +	if (!mac || !is_valid_ether_addr(mac))
> +		return -EINVAL;

Hi Sven

If i'm reading of_get_mac_address() correctly, there is no need to
call is_valid_ether_addr() afterwards. It does it already.

     Andrew