diff options
author | Edward Cree <ecree@solarflare.com> | 2015-05-20 12:12:13 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-05-22 00:43:54 +0200 |
commit | 4392dc6900618c1d5137a3cd43805d746a2c563a (patch) | |
tree | 811dc22de47b2bf3dcbf75db5e9a0040041f41a6 /drivers/net/ethernet/sfc/sriov.c | |
parent | sfc: add ndo_set_vf_vlan() function for EF10 (diff) | |
download | linux-4392dc6900618c1d5137a3cd43805d746a2c563a.tar.xz linux-4392dc6900618c1d5137a3cd43805d746a2c563a.zip |
sfc: add ndo_set_vf_link_state() function for EF10
Exercised with
"ip link set <PF intf> vf <vf_i> state {auto|enable|disable}"
Sets the reporting policy for VF link state to either
- mirror physical link state
- always up
- always down
get VF link state mode in efx_ef10_sriov_get_vf_config
Exercised by
"ip link show <PF intf>";
output will include a line like
vf 0 MAC 12:34:56:78:9a:bc, link-state auto
Signed-off-by: Shradha Shah <sshah@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/sfc/sriov.c')
-rw-r--r-- | drivers/net/ethernet/sfc/sriov.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/net/ethernet/sfc/sriov.c b/drivers/net/ethernet/sfc/sriov.c index d4b74452a677..6c5edbdbfa27 100644 --- a/drivers/net/ethernet/sfc/sriov.c +++ b/drivers/net/ethernet/sfc/sriov.c @@ -58,3 +58,15 @@ int efx_sriov_get_vf_config(struct net_device *net_dev, int vf_i, else return -EOPNOTSUPP; } + +int efx_sriov_set_vf_link_state(struct net_device *net_dev, int vf_i, + int link_state) +{ + struct efx_nic *efx = netdev_priv(net_dev); + + if (efx->type->sriov_set_vf_link_state) + return efx->type->sriov_set_vf_link_state(efx, vf_i, + link_state); + else + return -EOPNOTSUPP; +} |