xref: /linux/drivers/net/ethernet/sfc/sriov.h (revision 6f52b16c5b29b89d92c0e7236f4655dc8491ad70)
1 /****************************************************************************
2  * Driver for Solarflare network controllers and boards
3  * Copyright 2014-2015 Solarflare Communications Inc.
4  *
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU General Public License version 2 as published
7  * by the Free Software Foundation, incorporated herein by reference.
8  */
9 
10 #ifndef EFX_SRIOV_H
11 #define EFX_SRIOV_H
12 
13 #include "net_driver.h"
14 
15 #ifdef CONFIG_SFC_SRIOV
16 
17 int efx_sriov_set_vf_mac(struct net_device *net_dev, int vf_i, u8 *mac);
18 int efx_sriov_set_vf_vlan(struct net_device *net_dev, int vf_i, u16 vlan,
19 			  u8 qos, __be16 vlan_proto);
20 int efx_sriov_set_vf_spoofchk(struct net_device *net_dev, int vf_i,
21 			      bool spoofchk);
22 int efx_sriov_get_vf_config(struct net_device *net_dev, int vf_i,
23 			    struct ifla_vf_info *ivi);
24 int efx_sriov_set_vf_link_state(struct net_device *net_dev, int vf_i,
25 				int link_state);
26 #endif /* CONFIG_SFC_SRIOV */
27 
28 #endif /* EFX_SRIOV_H */
29