efx.c (ffb1e76f4f32d2b8ea4189df0484980370476395) efx.c (f3956ebb3bf06ab2266ad5ee2214aed46405810c)
1// SPDX-License-Identifier: GPL-2.0-only
2/****************************************************************************
3 * Driver for Solarflare network controllers and boards
4 * Copyright 2005-2006 Fen Systems Ltd.
5 * Copyright 2005-2013 Solarflare Communications Inc.
6 */
7
8#include <linux/module.h>

--- 1030 unchanged lines hidden (view full) ---

1039 efx->phy_mode = PHY_MODE_SPECIAL;
1040
1041 /* Connect up MAC/PHY operations table */
1042 rc = efx->type->probe_port(efx);
1043 if (rc)
1044 return rc;
1045
1046 /* Initialise MAC address to permanent address */
1// SPDX-License-Identifier: GPL-2.0-only
2/****************************************************************************
3 * Driver for Solarflare network controllers and boards
4 * Copyright 2005-2006 Fen Systems Ltd.
5 * Copyright 2005-2013 Solarflare Communications Inc.
6 */
7
8#include <linux/module.h>

--- 1030 unchanged lines hidden (view full) ---

1039 efx->phy_mode = PHY_MODE_SPECIAL;
1040
1041 /* Connect up MAC/PHY operations table */
1042 rc = efx->type->probe_port(efx);
1043 if (rc)
1044 return rc;
1045
1046 /* Initialise MAC address to permanent address */
1047 ether_addr_copy(efx->net_dev->dev_addr, efx->net_dev->perm_addr);
1047 eth_hw_addr_set(efx->net_dev, efx->net_dev->perm_addr);
1048
1049 return 0;
1050}
1051
1052static int ef4_init_port(struct ef4_nic *efx)
1053{
1054 int rc;
1055

--- 1101 unchanged lines hidden (view full) ---

2157 netif_err(efx, drv, efx->net_dev,
2158 "invalid ethernet MAC address requested: %pM\n",
2159 new_addr);
2160 return -EADDRNOTAVAIL;
2161 }
2162
2163 /* save old address */
2164 ether_addr_copy(old_addr, net_dev->dev_addr);
1048
1049 return 0;
1050}
1051
1052static int ef4_init_port(struct ef4_nic *efx)
1053{
1054 int rc;
1055

--- 1101 unchanged lines hidden (view full) ---

2157 netif_err(efx, drv, efx->net_dev,
2158 "invalid ethernet MAC address requested: %pM\n",
2159 new_addr);
2160 return -EADDRNOTAVAIL;
2161 }
2162
2163 /* save old address */
2164 ether_addr_copy(old_addr, net_dev->dev_addr);
2165 ether_addr_copy(net_dev->dev_addr, new_addr);
2165 eth_hw_addr_set(net_dev, new_addr);
2166 if (efx->type->set_mac_address) {
2167 rc = efx->type->set_mac_address(efx);
2168 if (rc) {
2166 if (efx->type->set_mac_address) {
2167 rc = efx->type->set_mac_address(efx);
2168 if (rc) {
2169 ether_addr_copy(net_dev->dev_addr, old_addr);
2169 eth_hw_addr_set(net_dev, old_addr);
2170 return rc;
2171 }
2172 }
2173
2174 /* Reconfigure the MAC */
2175 mutex_lock(&efx->mac_lock);
2176 ef4_mac_reconfigure(efx);
2177 mutex_unlock(&efx->mac_lock);

--- 1058 unchanged lines hidden ---
2170 return rc;
2171 }
2172 }
2173
2174 /* Reconfigure the MAC */
2175 mutex_lock(&efx->mac_lock);
2176 ef4_mac_reconfigure(efx);
2177 mutex_unlock(&efx->mac_lock);

--- 1058 unchanged lines hidden ---