aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/igb/igb.h
diff options
context:
space:
mode:
authorAlexander Duyck <alexander.h.duyck@intel.com>2009-02-19 23:40:07 -0500
committerDavid S. Miller <davem@davemloft.net>2009-02-20 03:22:54 -0500
commit4ae196dfd61d06b061c069edcdd7c73121e60a21 (patch)
tree68111629e73751b6200cc9bdd8b769246fe0d540 /drivers/net/igb/igb.h
parente173952257d7a3d3c64de3039d9fc02d1fbf49c3 (diff)
igb: Add support for enabling VFs to PF driver.
This patch adds the support to handle requests from the VF to perform operations such as completing resets, setting/reading mac address, adding vlans, adding multicast addresses, setting rlpml, and general communications between the PF and all VFs. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/igb/igb.h')
-rw-r--r--drivers/net/igb/igb.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/net/igb/igb.h b/drivers/net/igb/igb.h
index d925f7dd7fb2..e18ac1bf45ff 100644
--- a/drivers/net/igb/igb.h
+++ b/drivers/net/igb/igb.h
@@ -62,6 +62,17 @@ struct igb_adapter;
62#define IGB_MAX_TX_QUEUES IGB_MAX_RX_QUEUES 62#define IGB_MAX_TX_QUEUES IGB_MAX_RX_QUEUES
63#define IGB_ABS_MAX_TX_QUEUES 4 63#define IGB_ABS_MAX_TX_QUEUES 4
64 64
65#define IGB_MAX_VF_MC_ENTRIES 30
66#define IGB_MAX_VF_FUNCTIONS 8
67#define IGB_MAX_VFTA_ENTRIES 128
68
69struct vf_data_storage {
70 unsigned char vf_mac_addresses[ETH_ALEN];
71 u16 vf_mc_hashes[IGB_MAX_VF_MC_ENTRIES];
72 u16 num_vf_mc_hashes;
73 bool clear_to_send;
74};
75
65/* RX descriptor control thresholds. 76/* RX descriptor control thresholds.
66 * PTHRESH - MAC will consider prefetch if it has fewer than this number of 77 * PTHRESH - MAC will consider prefetch if it has fewer than this number of
67 * descriptors available in its onboard memory. 78 * descriptors available in its onboard memory.
@@ -272,6 +283,7 @@ struct igb_adapter {
272 unsigned int tx_ring_count; 283 unsigned int tx_ring_count;
273 unsigned int rx_ring_count; 284 unsigned int rx_ring_count;
274 unsigned int vfs_allocated_count; 285 unsigned int vfs_allocated_count;
286 struct vf_data_storage *vf_data;
275}; 287};
276 288
277#define IGB_FLAG_HAS_MSI (1 << 0) 289#define IGB_FLAG_HAS_MSI (1 << 0)