aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ixgbe/ixgbe.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ixgbe/ixgbe.h')
-rw-r--r--drivers/net/ixgbe/ixgbe.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/drivers/net/ixgbe/ixgbe.h b/drivers/net/ixgbe/ixgbe.h
index 3b8c92463617..8d468028bb55 100644
--- a/drivers/net/ixgbe/ixgbe.h
+++ b/drivers/net/ixgbe/ixgbe.h
@@ -1,7 +1,7 @@
1/******************************************************************************* 1/*******************************************************************************
2 2
3 Intel 10 Gigabit PCI Express Linux driver 3 Intel 10 Gigabit PCI Express Linux driver
4 Copyright(c) 1999 - 2010 Intel Corporation. 4 Copyright(c) 1999 - 2011 Intel Corporation.
5 5
6 This program is free software; you can redistribute it and/or modify it 6 This program is free software; you can redistribute it and/or modify it
7 under the terms and conditions of the GNU General Public License, 7 under the terms and conditions of the GNU General Public License,
@@ -118,6 +118,7 @@ struct vf_data_storage {
118 bool pf_set_mac; 118 bool pf_set_mac;
119 u16 pf_vlan; /* When set, guest VLAN config not allowed. */ 119 u16 pf_vlan; /* When set, guest VLAN config not allowed. */
120 u16 pf_qos; 120 u16 pf_qos;
121 u16 tx_rate;
121}; 122};
122 123
123/* wrapper around a pointer to a socket buffer, 124/* wrapper around a pointer to a socket buffer,
@@ -209,6 +210,7 @@ struct ixgbe_ring {
209 * associated with this ring, which is 210 * associated with this ring, which is
210 * different for DCB and RSS modes 211 * different for DCB and RSS modes
211 */ 212 */
213 u8 dcb_tc;
212 214
213 u16 work_limit; /* max work per interrupt */ 215 u16 work_limit; /* max work per interrupt */
214 216
@@ -243,7 +245,7 @@ enum ixgbe_ring_f_enum {
243 RING_F_ARRAY_SIZE /* must be last in enum set */ 245 RING_F_ARRAY_SIZE /* must be last in enum set */
244}; 246};
245 247
246#define IXGBE_MAX_DCB_INDICES 8 248#define IXGBE_MAX_DCB_INDICES 64
247#define IXGBE_MAX_RSS_INDICES 16 249#define IXGBE_MAX_RSS_INDICES 16
248#define IXGBE_MAX_VMDQ_INDICES 64 250#define IXGBE_MAX_VMDQ_INDICES 64
249#define IXGBE_MAX_FDIR_INDICES 64 251#define IXGBE_MAX_FDIR_INDICES 64
@@ -334,9 +336,14 @@ struct ixgbe_adapter {
334 u16 bd_number; 336 u16 bd_number;
335 struct work_struct reset_task; 337 struct work_struct reset_task;
336 struct ixgbe_q_vector *q_vector[MAX_MSIX_Q_VECTORS]; 338 struct ixgbe_q_vector *q_vector[MAX_MSIX_Q_VECTORS];
339
340 /* DCB parameters */
341 struct ieee_pfc *ixgbe_ieee_pfc;
342 struct ieee_ets *ixgbe_ieee_ets;
337 struct ixgbe_dcb_config dcb_cfg; 343 struct ixgbe_dcb_config dcb_cfg;
338 struct ixgbe_dcb_config temp_dcb_cfg; 344 struct ixgbe_dcb_config temp_dcb_cfg;
339 u8 dcb_set_bitmap; 345 u8 dcb_set_bitmap;
346 u8 dcbx_cap;
340 enum ixgbe_fc_mode last_lfc_mode; 347 enum ixgbe_fc_mode last_lfc_mode;
341 348
342 /* Interrupt Throttle Rate */ 349 /* Interrupt Throttle Rate */
@@ -462,6 +469,7 @@ struct ixgbe_adapter {
462 DECLARE_BITMAP(active_vfs, IXGBE_MAX_VF_FUNCTIONS); 469 DECLARE_BITMAP(active_vfs, IXGBE_MAX_VF_FUNCTIONS);
463 unsigned int num_vfs; 470 unsigned int num_vfs;
464 struct vf_data_storage *vfinfo; 471 struct vf_data_storage *vfinfo;
472 int vf_rate_link_speed;
465}; 473};
466 474
467enum ixbge_state_t { 475enum ixbge_state_t {
@@ -521,7 +529,6 @@ extern void ixgbe_unmap_and_free_tx_resource(struct ixgbe_ring *,
521extern void ixgbe_alloc_rx_buffers(struct ixgbe_ring *, u16); 529extern void ixgbe_alloc_rx_buffers(struct ixgbe_ring *, u16);
522extern void ixgbe_write_eitr(struct ixgbe_q_vector *); 530extern void ixgbe_write_eitr(struct ixgbe_q_vector *);
523extern int ethtool_ioctl(struct ifreq *ifr); 531extern int ethtool_ioctl(struct ifreq *ifr);
524extern u8 ixgbe_dcb_txq_to_tc(struct ixgbe_adapter *adapter, u8 index);
525extern s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw); 532extern s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw);
526extern s32 ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 pballoc); 533extern s32 ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 pballoc);
527extern s32 ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 pballoc); 534extern s32 ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 pballoc);
@@ -538,6 +545,7 @@ extern void ixgbe_configure_rscctl(struct ixgbe_adapter *adapter,
538extern void ixgbe_clear_rscctl(struct ixgbe_adapter *adapter, 545extern void ixgbe_clear_rscctl(struct ixgbe_adapter *adapter,
539 struct ixgbe_ring *ring); 546 struct ixgbe_ring *ring);
540extern void ixgbe_set_rx_mode(struct net_device *netdev); 547extern void ixgbe_set_rx_mode(struct net_device *netdev);
548extern int ixgbe_setup_tc(struct net_device *dev, u8 tc);
541#ifdef IXGBE_FCOE 549#ifdef IXGBE_FCOE
542extern void ixgbe_configure_fcoe(struct ixgbe_adapter *adapter); 550extern void ixgbe_configure_fcoe(struct ixgbe_adapter *adapter);
543extern int ixgbe_fso(struct ixgbe_adapter *adapter, 551extern int ixgbe_fso(struct ixgbe_adapter *adapter,
@@ -549,6 +557,8 @@ extern int ixgbe_fcoe_ddp(struct ixgbe_adapter *adapter,
549 struct sk_buff *skb); 557 struct sk_buff *skb);
550extern int ixgbe_fcoe_ddp_get(struct net_device *netdev, u16 xid, 558extern int ixgbe_fcoe_ddp_get(struct net_device *netdev, u16 xid,
551 struct scatterlist *sgl, unsigned int sgc); 559 struct scatterlist *sgl, unsigned int sgc);
560extern int ixgbe_fcoe_ddp_target(struct net_device *netdev, u16 xid,
561 struct scatterlist *sgl, unsigned int sgc);
552extern int ixgbe_fcoe_ddp_put(struct net_device *netdev, u16 xid); 562extern int ixgbe_fcoe_ddp_put(struct net_device *netdev, u16 xid);
553extern int ixgbe_fcoe_enable(struct net_device *netdev); 563extern int ixgbe_fcoe_enable(struct net_device *netdev);
554extern int ixgbe_fcoe_disable(struct net_device *netdev); 564extern int ixgbe_fcoe_disable(struct net_device *netdev);