diff options
author | Shradha Shah <sshah@solarflare.com> | 2015-05-20 11:08:56 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-05-21 18:43:52 -0400 |
commit | 862f894cb98c50d037d0c62da2aab3b9a2428c34 (patch) | |
tree | 03df815ea563ab32feb4a8e41c4ec5844cc1c257 /drivers | |
parent | af6a074d125558e420453c0068f9bdf13f42cadf (diff) | |
download | lwn-862f894cb98c50d037d0c62da2aab3b9a2428c34.tar.gz lwn-862f894cb98c50d037d0c62da2aab3b9a2428c34.zip |
sfc: MC_CMD_SET_MAC can only be called by the link control Function
MC_CMD_SET_MAC is privileged and can only by called by the link
control function.
This patch adds efx_ef10_mac_reconfigure_vf which avoids the call
to MC_CMD_SET_MAC by the Virtual function
Signed-off-by: Shradha Shah <sshah@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ethernet/sfc/ef10.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/net/ethernet/sfc/ef10.c b/drivers/net/ethernet/sfc/ef10.c index 882117a43c3a..70cbad39ee66 100644 --- a/drivers/net/ethernet/sfc/ef10.c +++ b/drivers/net/ethernet/sfc/ef10.c @@ -3480,6 +3480,13 @@ static int efx_ef10_mac_reconfigure(struct efx_nic *efx) return efx_mcdi_set_mac(efx); } +static int efx_ef10_mac_reconfigure_vf(struct efx_nic *efx) +{ + efx_ef10_filter_sync_rx_mode(efx); + + return 0; +} + static int efx_ef10_start_bist(struct efx_nic *efx, u32 bist_type) { MCDI_DECLARE_BUF(inbuf, MC_CMD_START_BIST_IN_LEN); @@ -3833,7 +3840,7 @@ const struct efx_nic_type efx_hunt_a0_vf_nic_type = { .stop_stats = efx_port_dummy_op_void, .set_id_led = efx_mcdi_set_id_led, .push_irq_moderation = efx_ef10_push_irq_moderation, - .reconfigure_mac = efx_ef10_mac_reconfigure, + .reconfigure_mac = efx_ef10_mac_reconfigure_vf, .check_mac_fault = efx_mcdi_mac_check_fault, .reconfigure_port = efx_mcdi_port_reconfigure, .get_wol = efx_ef10_get_wol_vf, |