diff options
author | Tobias Klauser <tklauser@distanz.ch> | 2014-05-30 03:47:17 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-05-30 20:06:23 -0400 |
commit | d581ebf5a1f82a27d7df21bd1d76e517c67b49d5 (patch) | |
tree | f9b0c3658f3176528622a86625035dc163530e82 /drivers/net/ethernet/tile/tilegx.c | |
parent | 08f6dd89d26f8599dd138c25506960e3856fd062 (diff) |
net: tile: Use helpers from linux/etherdevice.h to check/set MAC
Use is_zero_ether_addr() to check for the MAC address being all zeros instead of
open coding the check.
Also use ether_addr_copy() instead of a manual memcpy() to set the
netdev->dev_addr.
Furthermore, get rid of a redundant assignment of netdev->addr_len. This is
already set by ether_setup() which is called in tile_net_setup().
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Acked-by: Chris Metcalf <cmetcalf@tilera.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/tile/tilegx.c')
-rw-r--r-- | drivers/net/ethernet/tile/tilegx.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/drivers/net/ethernet/tile/tilegx.c b/drivers/net/ethernet/tile/tilegx.c index 7e1c91d41a87..7d80d2e6a69c 100644 --- a/drivers/net/ethernet/tile/tilegx.c +++ b/drivers/net/ethernet/tile/tilegx.c | |||
@@ -2192,7 +2192,6 @@ static void tile_net_dev_init(const char *name, const uint8_t *mac) | |||
2192 | { | 2192 | { |
2193 | int ret; | 2193 | int ret; |
2194 | int i; | 2194 | int i; |
2195 | int nz_addr = 0; | ||
2196 | struct net_device *dev; | 2195 | struct net_device *dev; |
2197 | struct tile_net_priv *priv; | 2196 | struct tile_net_priv *priv; |
2198 | 2197 | ||
@@ -2223,15 +2222,10 @@ static void tile_net_dev_init(const char *name, const uint8_t *mac) | |||
2223 | * be done before the device is opened. If the MAC is all zeroes, | 2222 | * be done before the device is opened. If the MAC is all zeroes, |
2224 | * we use a random address, since we're probably on the simulator. | 2223 | * we use a random address, since we're probably on the simulator. |
2225 | */ | 2224 | */ |
2226 | for (i = 0; i < 6; i++) | 2225 | if (!is_zero_ether_addr(mac)) |
2227 | nz_addr |= mac[i]; | 2226 | ether_addr_copy(dev->dev_addr, mac); |
2228 | 2227 | else | |
2229 | if (nz_addr) { | ||
2230 | memcpy(dev->dev_addr, mac, ETH_ALEN); | ||
2231 | dev->addr_len = 6; | ||
2232 | } else { | ||
2233 | eth_hw_addr_random(dev); | 2228 | eth_hw_addr_random(dev); |
2234 | } | ||
2235 | 2229 | ||
2236 | /* Register the network device. */ | 2230 | /* Register the network device. */ |
2237 | ret = register_netdev(dev); | 2231 | ret = register_netdev(dev); |