summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/sfc/efx.c
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2011-09-13 18:47:48 (GMT)
committerBen Hutchings <bhutchings@solarflare.com>2012-01-27 00:10:48 (GMT)
commit30b81cda9516878906b44fed16aac9df1dbb89c7 (patch)
treee3e7f48c69176373d6ffb9406f5ac6ec7b8ed7e4 /drivers/net/ethernet/sfc/efx.c
parent1daf417029ddc10b7854430c1e1118df791d0eaf (diff)
downloadlinux-fsl-qoriq-30b81cda9516878906b44fed16aac9df1dbb89c7.tar.xz
sfc: Remove efx_nic_type::push_multicast_hash operation
Both implementations of efx_nic_type::reconfigure_mac operation push the multicast hash filter to the hardware. It is therefore redundant to call efx_nic_type::push_multicast_hash as well. efx_mcdi_mac_reconfigure() also uses this operation, but the implementation for Siena just uses MCDI anyway. Merge that into efx_mcdi_mac_reconfigure(). Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Diffstat (limited to 'drivers/net/ethernet/sfc/efx.c')
-rw-r--r--drivers/net/ethernet/sfc/efx.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/net/ethernet/sfc/efx.c b/drivers/net/ethernet/sfc/efx.c
index 1d20e01..de16247 100644
--- a/drivers/net/ethernet/sfc/efx.c
+++ b/drivers/net/ethernet/sfc/efx.c
@@ -898,10 +898,8 @@ static void efx_mac_work(struct work_struct *data)
struct efx_nic *efx = container_of(data, struct efx_nic, mac_work);
mutex_lock(&efx->mac_lock);
- if (efx->port_enabled) {
- efx->type->push_multicast_hash(efx);
+ if (efx->port_enabled)
efx->type->reconfigure_mac(efx);
- }
mutex_unlock(&efx->mac_lock);
}
@@ -968,7 +966,6 @@ static void efx_start_port(struct efx_nic *efx)
/* efx_mac_work() might have been scheduled after efx_stop_port(),
* and then cancelled by efx_flush_all() */
- efx->type->push_multicast_hash(efx);
efx->type->reconfigure_mac(efx);
mutex_unlock(&efx->mac_lock);