From: Steven J. Magnani Date: Wed, 17 Feb 2010 07:55:07 +0000 (+0000) Subject: ll_temac: Fix MAC address configuration from userland X-Git-Tag: v2.6.34-rc1~233^2~210 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=8ea7a37c5a312bfee51ff7f12f78efe4fbc901cc;p=~shefty%2Frdma-dev.git ll_temac: Fix MAC address configuration from userland A userland command to set the LLTEMAC MAC address, i.e. "ifconfig eth0 hw addr xx:yy:zz:pp:dd:qq", results in a device address of 00:01:xx:yy:zz:pp. Correct this. Signed-off-by: Steven J. Magnani Signed-off-by: David S. Miller --- diff --git a/drivers/net/ll_temac_main.c b/drivers/net/ll_temac_main.c index d7eb24cc264..e5344025374 100644 --- a/drivers/net/ll_temac_main.c +++ b/drivers/net/ll_temac_main.c @@ -224,6 +224,13 @@ static int temac_set_mac_address(struct net_device *ndev, void *address) return 0; } +static int netdev_set_mac_address(struct net_device *ndev, void *p) +{ + struct sockaddr *addr = p; + + return temac_set_mac_address(ndev, addr->sa_data); +} + static void temac_set_multicast_list(struct net_device *ndev) { struct temac_local *lp = netdev_priv(ndev); @@ -768,7 +775,7 @@ static const struct net_device_ops temac_netdev_ops = { .ndo_open = temac_open, .ndo_stop = temac_stop, .ndo_start_xmit = temac_start_xmit, - .ndo_set_mac_address = temac_set_mac_address, + .ndo_set_mac_address = netdev_set_mac_address, //.ndo_set_multicast_list = temac_set_multicast_list, #ifdef CONFIG_NET_POLL_CONTROLLER .ndo_poll_controller = temac_poll_controller,