|
@@ -28,6 +28,7 @@
|
|
|
#include <linux/if.h>
|
|
|
#include <linux/if_ether.h>
|
|
|
#include <linux/if_packet.h>
|
|
|
+#include <linux/if_link.h>
|
|
|
|
|
|
#ifdef __KERNEL__
|
|
|
#include <linux/timer.h>
|
|
@@ -621,6 +622,13 @@ struct netdev_queue {
|
|
|
* this function is called when a VLAN id is unregistered.
|
|
|
*
|
|
|
* void (*ndo_poll_controller)(struct net_device *dev);
|
|
|
+ *
|
|
|
+ * SR-IOV management functions.
|
|
|
+ * int (*ndo_set_vf_mac)(struct net_device *dev, int vf, u8* mac);
|
|
|
+ * int (*ndo_set_vf_vlan)(struct net_device *dev, int vf, u16 vlan, u8 qos);
|
|
|
+ * int (*ndo_set_vf_tx_rate)(struct net_device *dev, int vf, int rate);
|
|
|
+ * int (*ndo_get_vf_config)(struct net_device *dev,
|
|
|
+ * int vf, struct ifla_vf_info *ivf);
|
|
|
*/
|
|
|
#define HAVE_NET_DEVICE_OPS
|
|
|
struct net_device_ops {
|
|
@@ -660,6 +668,15 @@ struct net_device_ops {
|
|
|
#ifdef CONFIG_NET_POLL_CONTROLLER
|
|
|
void (*ndo_poll_controller)(struct net_device *dev);
|
|
|
#endif
|
|
|
+ int (*ndo_set_vf_mac)(struct net_device *dev,
|
|
|
+ int queue, u8 *mac);
|
|
|
+ int (*ndo_set_vf_vlan)(struct net_device *dev,
|
|
|
+ int queue, u16 vlan, u8 qos);
|
|
|
+ int (*ndo_set_vf_tx_rate)(struct net_device *dev,
|
|
|
+ int vf, int rate);
|
|
|
+ int (*ndo_get_vf_config)(struct net_device *dev,
|
|
|
+ int vf,
|
|
|
+ struct ifla_vf_info *ivf);
|
|
|
#if defined(CONFIG_FCOE) || defined(CONFIG_FCOE_MODULE)
|
|
|
int (*ndo_fcoe_enable)(struct net_device *dev);
|
|
|
int (*ndo_fcoe_disable)(struct net_device *dev);
|