Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 83a093b4 authored by Bjørn Mork's avatar Bjørn Mork Committed by David S. Miller
Browse files

net: etherdevice: add address inherit helper



Some etherdevices inherit their address from a parent or
master device. The addr_assign_type should be updated along
with the address in these cases.  Adding a helper function
to simplify this.

Signed-off-by: default avatarBjørn Mork <bjorn@mork.no>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 5a17a390
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -198,6 +198,21 @@ static inline void eth_hw_addr_random(struct net_device *dev)
	eth_random_addr(dev->dev_addr);
}

/**
 * eth_hw_addr_inherit - Copy dev_addr from another net_device
 * @dst: pointer to net_device to copy dev_addr to
 * @src: pointer to net_device to copy dev_addr from
 *
 * Copy the Ethernet address from one net_device to another along with
 * the address attributes (addr_assign_type).
 */
static inline void eth_hw_addr_inherit(struct net_device *dst,
				       struct net_device *src)
{
	dst->addr_assign_type = src->addr_assign_type;
	memcpy(dst->dev_addr, src->dev_addr, ETH_ALEN);
}

/**
 * compare_ether_addr - Compare two Ethernet addresses
 * @addr1: Pointer to a six-byte array containing the Ethernet address