Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations | Functions
bnx2x_sp.h File Reference

Go to the source code of this file.

Data Structures

struct  bnx2x_raw_obj
 
struct  bnx2x_mac_ramrod_data
 
struct  bnx2x_vlan_ramrod_data
 
struct  bnx2x_vlan_mac_ramrod_data
 
union  bnx2x_classification_ramrod_data
 
struct  bnx2x_vlan_mac_data
 
union  bnx2x_exe_queue_cmd_data
 
struct  bnx2x_exeq_elem
 
union  bnx2x_exeq_comp_elem
 
struct  bnx2x_exe_queue_obj
 
struct  bnx2x_vlan_mac_registry_elem
 
struct  bnx2x_vlan_mac_ramrod_params
 
struct  bnx2x_vlan_mac_obj
 
struct  bnx2x_rx_mode_ramrod_params
 
struct  bnx2x_rx_mode_obj
 
struct  bnx2x_mcast_list_elem
 
union  bnx2x_mcast_config_data
 
struct  bnx2x_mcast_ramrod_params
 
struct  bnx2x_mcast_obj
 
struct  bnx2x_credit_pool_obj
 
struct  bnx2x_config_rss_params
 
struct  bnx2x_rss_config_obj
 
struct  bnx2x_queue_init_params
 
struct  bnx2x_queue_terminate_params
 
struct  bnx2x_queue_cfc_del_params
 
struct  bnx2x_queue_update_params
 
struct  rxq_pause_params
 
struct  bnx2x_general_setup_params
 
struct  bnx2x_rxq_setup_params
 
struct  bnx2x_txq_setup_params
 
struct  bnx2x_queue_setup_params
 
struct  bnx2x_queue_setup_tx_only_params
 
struct  bnx2x_queue_state_params
 
struct  bnx2x_viflist_params
 
struct  bnx2x_queue_sp_obj
 
struct  bnx2x_func_hw_init_params
 
struct  bnx2x_func_hw_reset_params
 
struct  bnx2x_func_start_params
 
struct  bnx2x_func_afex_update_params
 
struct  bnx2x_func_afex_viflists_params
 
struct  bnx2x_func_tx_start_params
 
struct  bnx2x_func_state_params
 
struct  bnx2x_func_sp_drv_ops
 
struct  bnx2x_func_sp_obj
 
union  bnx2x_qable_obj
 

Macros

#define BNX2X_MCAST_BINS_NUM   256
 
#define BNX2X_MCAST_VEC_SZ   (BNX2X_MCAST_BINS_NUM / 64)
 
#define BNX2X_POOL_VEC_SIZE   (MAX_MAC_CREDIT_E2 / 64)
 
#define BNX2X_PRIMARY_CID_INDEX   0
 
#define BNX2X_MULTI_TX_COS_E1X   3 /* QM only */
 
#define BNX2X_MULTI_TX_COS_E2_E3A0   2
 
#define BNX2X_MULTI_TX_COS_E3B0   3
 
#define BNX2X_MULTI_TX_COS   3 /* Maximum possible */
 

Typedefs

typedef int(* exe_q_validate )(struct bnx2x *bp, union bnx2x_qable_obj *o, struct bnx2x_exeq_elem *elem)
 
typedef int(* exe_q_remove )(struct bnx2x *bp, union bnx2x_qable_obj *o, struct bnx2x_exeq_elem *elem)
 
typedef int(* exe_q_optimize )(struct bnx2x *bp, union bnx2x_qable_obj *o, struct bnx2x_exeq_elem *elem)
 
typedef int(* exe_q_execute )(struct bnx2x *bp, union bnx2x_qable_obj *o, struct list_head *exe_chunk, unsigned long *ramrod_flags)
 
typedef struct bnx2x_exeq_elem *(* exe_q_get )(struct bnx2x_exe_queue_obj *o, struct bnx2x_exeq_elem *elem)
 

Enumerations

enum  {
  RAMROD_TX, RAMROD_RX, RAMROD_COMP_WAIT, RAMROD_DRV_CLR_ONLY,
  RAMROD_RESTORE, RAMROD_EXEC, RAMROD_CONT
}
 
enum  bnx2x_obj_type { BNX2X_OBJ_TYPE_RX, BNX2X_OBJ_TYPE_TX, BNX2X_OBJ_TYPE_RX_TX }
 
enum  {
  BNX2X_FILTER_MAC_PENDING, BNX2X_FILTER_VLAN_PENDING, BNX2X_FILTER_VLAN_MAC_PENDING, BNX2X_FILTER_RX_MODE_PENDING,
  BNX2X_FILTER_RX_MODE_SCHED, BNX2X_FILTER_ISCSI_ETH_START_SCHED, BNX2X_FILTER_ISCSI_ETH_STOP_SCHED, BNX2X_FILTER_FCOE_ETH_START_SCHED,
  BNX2X_FILTER_FCOE_ETH_STOP_SCHED, BNX2X_FILTER_MCAST_PENDING, BNX2X_FILTER_MCAST_SCHED, BNX2X_FILTER_RSS_CONF_PENDING,
  BNX2X_AFEX_FCOE_Q_UPDATE_PENDING, BNX2X_AFEX_PENDING_VIFSET_MCP_ACK
}
 
enum  bnx2x_vlan_mac_cmd { BNX2X_VLAN_MAC_ADD, BNX2X_VLAN_MAC_DEL, BNX2X_VLAN_MAC_MOVE }
 
enum  {
  BNX2X_UC_LIST_MAC, BNX2X_ETH_MAC, BNX2X_ISCSI_ETH_MAC, BNX2X_NETQ_ETH_MAC,
  BNX2X_DONT_CONSUME_CAM_CREDIT, BNX2X_DONT_CONSUME_CAM_CREDIT_DEST
}
 
enum  { BNX2X_LLH_CAM_ISCSI_ETH_LINE = 0, BNX2X_LLH_CAM_ETH_LINE, BNX2X_LLH_CAM_MAX_PF_LINE = NIG_REG_LLH1_FUNC_MEM_SIZE / 2 }
 
enum  { BNX2X_RX_MODE_FCOE_ETH, BNX2X_RX_MODE_ISCSI_ETH }
 
enum  {
  BNX2X_ACCEPT_UNICAST, BNX2X_ACCEPT_MULTICAST, BNX2X_ACCEPT_ALL_UNICAST, BNX2X_ACCEPT_ALL_MULTICAST,
  BNX2X_ACCEPT_BROADCAST, BNX2X_ACCEPT_UNMATCHED, BNX2X_ACCEPT_ANY_VLAN
}
 
enum  { BNX2X_MCAST_CMD_ADD, BNX2X_MCAST_CMD_CONT, BNX2X_MCAST_CMD_DEL, BNX2X_MCAST_CMD_RESTORE }
 
enum  {
  BNX2X_RSS_MODE_DISABLED, BNX2X_RSS_MODE_REGULAR, BNX2X_RSS_SET_SRCH, BNX2X_RSS_IPV4,
  BNX2X_RSS_IPV4_TCP, BNX2X_RSS_IPV4_UDP, BNX2X_RSS_IPV6, BNX2X_RSS_IPV6_TCP,
  BNX2X_RSS_IPV6_UDP
}
 
enum  {
  BNX2X_Q_UPDATE_IN_VLAN_REM, BNX2X_Q_UPDATE_IN_VLAN_REM_CHNG, BNX2X_Q_UPDATE_OUT_VLAN_REM, BNX2X_Q_UPDATE_OUT_VLAN_REM_CHNG,
  BNX2X_Q_UPDATE_ANTI_SPOOF, BNX2X_Q_UPDATE_ANTI_SPOOF_CHNG, BNX2X_Q_UPDATE_ACTIVATE, BNX2X_Q_UPDATE_ACTIVATE_CHNG,
  BNX2X_Q_UPDATE_DEF_VLAN_EN, BNX2X_Q_UPDATE_DEF_VLAN_EN_CHNG, BNX2X_Q_UPDATE_SILENT_VLAN_REM_CHNG, BNX2X_Q_UPDATE_SILENT_VLAN_REM
}
 
enum  bnx2x_q_state {
  BNX2X_Q_STATE_RESET, BNX2X_Q_STATE_INITIALIZED, BNX2X_Q_STATE_ACTIVE, BNX2X_Q_STATE_MULTI_COS,
  BNX2X_Q_STATE_MCOS_TERMINATED, BNX2X_Q_STATE_INACTIVE, BNX2X_Q_STATE_STOPPED, BNX2X_Q_STATE_TERMINATED,
  BNX2X_Q_STATE_FLRED, BNX2X_Q_STATE_MAX
}
 
enum  bnx2x_queue_cmd {
  BNX2X_Q_CMD_INIT, BNX2X_Q_CMD_SETUP, BNX2X_Q_CMD_SETUP_TX_ONLY, BNX2X_Q_CMD_DEACTIVATE,
  BNX2X_Q_CMD_ACTIVATE, BNX2X_Q_CMD_UPDATE, BNX2X_Q_CMD_UPDATE_TPA, BNX2X_Q_CMD_HALT,
  BNX2X_Q_CMD_CFC_DEL, BNX2X_Q_CMD_TERMINATE, BNX2X_Q_CMD_EMPTY, BNX2X_Q_CMD_MAX
}
 
enum  {
  BNX2X_Q_FLG_TPA, BNX2X_Q_FLG_TPA_IPV6, BNX2X_Q_FLG_TPA_GRO, BNX2X_Q_FLG_STATS,
  BNX2X_Q_FLG_ZERO_STATS, BNX2X_Q_FLG_ACTIVE, BNX2X_Q_FLG_OV, BNX2X_Q_FLG_VLAN,
  BNX2X_Q_FLG_COS, BNX2X_Q_FLG_HC, BNX2X_Q_FLG_HC_EN, BNX2X_Q_FLG_DHC,
  BNX2X_Q_FLG_FCOE, BNX2X_Q_FLG_LEADING_RSS, BNX2X_Q_FLG_MCAST, BNX2X_Q_FLG_DEF_VLAN,
  BNX2X_Q_FLG_TX_SWITCH, BNX2X_Q_FLG_TX_SEC, BNX2X_Q_FLG_ANTI_SPOOF, BNX2X_Q_FLG_SILENT_VLAN_REM,
  BNX2X_Q_FLG_FORCE_DEFAULT_PRI
}
 
enum  bnx2x_q_type { BNX2X_Q_TYPE_HAS_RX, BNX2X_Q_TYPE_HAS_TX }
 
enum  bnx2x_func_state {
  BNX2X_F_STATE_RESET, BNX2X_F_STATE_INITIALIZED, BNX2X_F_STATE_STARTED, BNX2X_F_STATE_TX_STOPPED,
  BNX2X_F_STATE_MAX
}
 
enum  bnx2x_func_cmd {
  BNX2X_F_CMD_HW_INIT, BNX2X_F_CMD_START, BNX2X_F_CMD_STOP, BNX2X_F_CMD_HW_RESET,
  BNX2X_F_CMD_AFEX_UPDATE, BNX2X_F_CMD_AFEX_VIFLISTS, BNX2X_F_CMD_TX_STOP, BNX2X_F_CMD_TX_START,
  BNX2X_F_CMD_MAX
}
 

Functions

void bnx2x_set_mac_in_nig (struct bnx2x *bp, bool add, unsigned char *dev_addr, int index)
 
void bnx2x_init_func_obj (struct bnx2x *bp, struct bnx2x_func_sp_obj *obj, void *rdata, dma_addr_t rdata_mapping, void *afex_rdata, dma_addr_t afex_rdata_mapping, struct bnx2x_func_sp_drv_ops *drv_iface)
 
int bnx2x_func_state_change (struct bnx2x *bp, struct bnx2x_func_state_params *params)
 
enum bnx2x_func_state bnx2x_func_get_state (struct bnx2x *bp, struct bnx2x_func_sp_obj *o)
 
void bnx2x_init_queue_obj (struct bnx2x *bp, struct bnx2x_queue_sp_obj *obj, u8 cl_id, u32 *cids, u8 cid_cnt, u8 func_id, void *rdata, dma_addr_t rdata_mapping, unsigned long type)
 
int bnx2x_queue_state_change (struct bnx2x *bp, struct bnx2x_queue_state_params *params)
 
void bnx2x_init_mac_obj (struct bnx2x *bp, struct bnx2x_vlan_mac_obj *mac_obj, u8 cl_id, u32 cid, u8 func_id, void *rdata, dma_addr_t rdata_mapping, int state, unsigned long *pstate, bnx2x_obj_type type, struct bnx2x_credit_pool_obj *macs_pool)
 
void bnx2x_init_vlan_obj (struct bnx2x *bp, struct bnx2x_vlan_mac_obj *vlan_obj, u8 cl_id, u32 cid, u8 func_id, void *rdata, dma_addr_t rdata_mapping, int state, unsigned long *pstate, bnx2x_obj_type type, struct bnx2x_credit_pool_obj *vlans_pool)
 
void bnx2x_init_vlan_mac_obj (struct bnx2x *bp, struct bnx2x_vlan_mac_obj *vlan_mac_obj, u8 cl_id, u32 cid, u8 func_id, void *rdata, dma_addr_t rdata_mapping, int state, unsigned long *pstate, bnx2x_obj_type type, struct bnx2x_credit_pool_obj *macs_pool, struct bnx2x_credit_pool_obj *vlans_pool)
 
int bnx2x_config_vlan_mac (struct bnx2x *bp, struct bnx2x_vlan_mac_ramrod_params *p)
 
int bnx2x_vlan_mac_move (struct bnx2x *bp, struct bnx2x_vlan_mac_ramrod_params *p, struct bnx2x_vlan_mac_obj *dest_o)
 
void bnx2x_init_rx_mode_obj (struct bnx2x *bp, struct bnx2x_rx_mode_obj *o)
 
int bnx2x_config_rx_mode (struct bnx2x *bp, struct bnx2x_rx_mode_ramrod_params *p)
 
void bnx2x_init_mcast_obj (struct bnx2x *bp, struct bnx2x_mcast_obj *mcast_obj, u8 mcast_cl_id, u32 mcast_cid, u8 func_id, u8 engine_id, void *rdata, dma_addr_t rdata_mapping, int state, unsigned long *pstate, bnx2x_obj_type type)
 
int bnx2x_config_mcast (struct bnx2x *bp, struct bnx2x_mcast_ramrod_params *p, int cmd)
 
void bnx2x_init_mac_credit_pool (struct bnx2x *bp, struct bnx2x_credit_pool_obj *p, u8 func_id, u8 func_num)
 
void bnx2x_init_vlan_credit_pool (struct bnx2x *bp, struct bnx2x_credit_pool_obj *p, u8 func_id, u8 func_num)
 
void bnx2x_init_rss_config_obj (struct bnx2x *bp, struct bnx2x_rss_config_obj *rss_obj, u8 cl_id, u32 cid, u8 func_id, u8 engine_id, void *rdata, dma_addr_t rdata_mapping, int state, unsigned long *pstate, bnx2x_obj_type type)
 
int bnx2x_config_rss (struct bnx2x *bp, struct bnx2x_config_rss_params *p)
 
void bnx2x_get_rss_ind_table (struct bnx2x_rss_config_obj *rss_obj, u8 *ind_table)
 

Macro Definition Documentation

#define BNX2X_MCAST_BINS_NUM   256

Definition at line 533 of file bnx2x_sp.h.

#define BNX2X_MCAST_VEC_SZ   (BNX2X_MCAST_BINS_NUM / 64)

Definition at line 534 of file bnx2x_sp.h.

#define BNX2X_MULTI_TX_COS   3 /* Maximum possible */

Definition at line 827 of file bnx2x_sp.h.

#define BNX2X_MULTI_TX_COS_E1X   3 /* QM only */

Definition at line 824 of file bnx2x_sp.h.

#define BNX2X_MULTI_TX_COS_E2_E3A0   2

Definition at line 825 of file bnx2x_sp.h.

#define BNX2X_MULTI_TX_COS_E3B0   3

Definition at line 826 of file bnx2x_sp.h.

#define BNX2X_POOL_VEC_SIZE   (MAX_MAC_CREDIT_E2 / 64)

Definition at line 643 of file bnx2x_sp.h.

#define BNX2X_PRIMARY_CID_INDEX   0

Definition at line 823 of file bnx2x_sp.h.

Typedef Documentation

typedef int(* exe_q_execute)(struct bnx2x *bp, union bnx2x_qable_obj *o, struct list_head *exe_chunk, unsigned long *ramrod_flags)

Definition at line 176 of file bnx2x_sp.h.

Definition at line 181 of file bnx2x_sp.h.

typedef int(* exe_q_optimize)(struct bnx2x *bp, union bnx2x_qable_obj *o, struct bnx2x_exeq_elem *elem)

Definition at line 173 of file bnx2x_sp.h.

typedef int(* exe_q_remove)(struct bnx2x *bp, union bnx2x_qable_obj *o, struct bnx2x_exeq_elem *elem)

Definition at line 166 of file bnx2x_sp.h.

typedef int(* exe_q_validate)(struct bnx2x *bp, union bnx2x_qable_obj *o, struct bnx2x_exeq_elem *elem)

Definition at line 162 of file bnx2x_sp.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
RAMROD_TX 
RAMROD_RX 
RAMROD_COMP_WAIT 
RAMROD_DRV_CLR_ONLY 
RAMROD_RESTORE 
RAMROD_EXEC 
RAMROD_CONT 

Definition at line 26 of file bnx2x_sp.h.

anonymous enum
Enumerator:
BNX2X_FILTER_MAC_PENDING 
BNX2X_FILTER_VLAN_PENDING 
BNX2X_FILTER_VLAN_MAC_PENDING 
BNX2X_FILTER_RX_MODE_PENDING 
BNX2X_FILTER_RX_MODE_SCHED 
BNX2X_FILTER_ISCSI_ETH_START_SCHED 
BNX2X_FILTER_ISCSI_ETH_STOP_SCHED 
BNX2X_FILTER_FCOE_ETH_START_SCHED 
BNX2X_FILTER_FCOE_ETH_STOP_SCHED 
BNX2X_FILTER_MCAST_PENDING 
BNX2X_FILTER_MCAST_SCHED 
BNX2X_FILTER_RSS_CONF_PENDING 
BNX2X_AFEX_FCOE_Q_UPDATE_PENDING 
BNX2X_AFEX_PENDING_VIFSET_MCP_ACK 

Definition at line 52 of file bnx2x_sp.h.

anonymous enum
Enumerator:
BNX2X_UC_LIST_MAC 
BNX2X_ETH_MAC 
BNX2X_ISCSI_ETH_MAC 
BNX2X_NETQ_ETH_MAC 
BNX2X_DONT_CONSUME_CAM_CREDIT 
BNX2X_DONT_CONSUME_CAM_CREDIT_DEST 

Definition at line 260 of file bnx2x_sp.h.

anonymous enum
Enumerator:
BNX2X_LLH_CAM_ISCSI_ETH_LINE 
BNX2X_LLH_CAM_ETH_LINE 
BNX2X_LLH_CAM_MAX_PF_LINE 

Definition at line 430 of file bnx2x_sp.h.

anonymous enum

RX_MODE verbs:DROP_ALL/ACCEPT_ALL/ACCEPT_ALL_MULTI/ACCEPT_ALL_VLAN/NORMAL

Enumerator:
BNX2X_RX_MODE_FCOE_ETH 
BNX2X_RX_MODE_ISCSI_ETH 

Definition at line 444 of file bnx2x_sp.h.

anonymous enum
Enumerator:
BNX2X_ACCEPT_UNICAST 
BNX2X_ACCEPT_MULTICAST 
BNX2X_ACCEPT_ALL_UNICAST 
BNX2X_ACCEPT_ALL_MULTICAST 
BNX2X_ACCEPT_BROADCAST 
BNX2X_ACCEPT_UNMATCHED 
BNX2X_ACCEPT_ANY_VLAN 

Definition at line 449 of file bnx2x_sp.h.

anonymous enum
Enumerator:
BNX2X_MCAST_CMD_ADD 
BNX2X_MCAST_CMD_CONT 
BNX2X_MCAST_CMD_DEL 
BNX2X_MCAST_CMD_RESTORE 

Definition at line 521 of file bnx2x_sp.h.

anonymous enum
Enumerator:
BNX2X_RSS_MODE_DISABLED 
BNX2X_RSS_MODE_REGULAR 
BNX2X_RSS_SET_SRCH 
BNX2X_RSS_IPV4 
BNX2X_RSS_IPV4_TCP 
BNX2X_RSS_IPV4_UDP 
BNX2X_RSS_IPV6 
BNX2X_RSS_IPV6_TCP 
BNX2X_RSS_IPV6_UDP 

Definition at line 687 of file bnx2x_sp.h.

anonymous enum
Enumerator:
BNX2X_Q_UPDATE_IN_VLAN_REM 
BNX2X_Q_UPDATE_IN_VLAN_REM_CHNG 
BNX2X_Q_UPDATE_OUT_VLAN_REM 
BNX2X_Q_UPDATE_OUT_VLAN_REM_CHNG 
BNX2X_Q_UPDATE_ANTI_SPOOF 
BNX2X_Q_UPDATE_ANTI_SPOOF_CHNG 
BNX2X_Q_UPDATE_ACTIVATE 
BNX2X_Q_UPDATE_ACTIVATE_CHNG 
BNX2X_Q_UPDATE_DEF_VLAN_EN 
BNX2X_Q_UPDATE_DEF_VLAN_EN_CHNG 
BNX2X_Q_UPDATE_SILENT_VLAN_REM_CHNG 
BNX2X_Q_UPDATE_SILENT_VLAN_REM 

Definition at line 744 of file bnx2x_sp.h.

anonymous enum
Enumerator:
BNX2X_Q_FLG_TPA 
BNX2X_Q_FLG_TPA_IPV6 
BNX2X_Q_FLG_TPA_GRO 
BNX2X_Q_FLG_STATS 
BNX2X_Q_FLG_ZERO_STATS 
BNX2X_Q_FLG_ACTIVE 
BNX2X_Q_FLG_OV 
BNX2X_Q_FLG_VLAN 
BNX2X_Q_FLG_COS 
BNX2X_Q_FLG_HC 
BNX2X_Q_FLG_HC_EN 
BNX2X_Q_FLG_DHC 
BNX2X_Q_FLG_FCOE 
BNX2X_Q_FLG_LEADING_RSS 
BNX2X_Q_FLG_MCAST 
BNX2X_Q_FLG_DEF_VLAN 
BNX2X_Q_FLG_TX_SWITCH 
BNX2X_Q_FLG_TX_SEC 
BNX2X_Q_FLG_ANTI_SPOOF 
BNX2X_Q_FLG_SILENT_VLAN_REM 
BNX2X_Q_FLG_FORCE_DEFAULT_PRI 

Definition at line 790 of file bnx2x_sp.h.

Enumerator:
BNX2X_F_CMD_HW_INIT 
BNX2X_F_CMD_START 
BNX2X_F_CMD_STOP 
BNX2X_F_CMD_HW_RESET 
BNX2X_F_CMD_AFEX_UPDATE 
BNX2X_F_CMD_AFEX_VIFLISTS 
BNX2X_F_CMD_TX_STOP 
BNX2X_F_CMD_TX_START 
BNX2X_F_CMD_MAX 

Definition at line 1055 of file bnx2x_sp.h.

Enumerator:
BNX2X_F_STATE_RESET 
BNX2X_F_STATE_INITIALIZED 
BNX2X_F_STATE_STARTED 
BNX2X_F_STATE_TX_STOPPED 
BNX2X_F_STATE_MAX 

Definition at line 1046 of file bnx2x_sp.h.

Enumerator:
BNX2X_OBJ_TYPE_RX 
BNX2X_OBJ_TYPE_TX 
BNX2X_OBJ_TYPE_RX_TX 

Definition at line 45 of file bnx2x_sp.h.

Enumerator:
BNX2X_Q_STATE_RESET 
BNX2X_Q_STATE_INITIALIZED 
BNX2X_Q_STATE_ACTIVE 
BNX2X_Q_STATE_MULTI_COS 
BNX2X_Q_STATE_MCOS_TERMINATED 
BNX2X_Q_STATE_INACTIVE 
BNX2X_Q_STATE_STOPPED 
BNX2X_Q_STATE_TERMINATED 
BNX2X_Q_STATE_FLRED 
BNX2X_Q_STATE_MAX 

Definition at line 760 of file bnx2x_sp.h.

Enumerator:
BNX2X_Q_TYPE_HAS_RX 

TODO: Consider moving both these flags into the init() ramrod params.

BNX2X_Q_TYPE_HAS_TX 

Definition at line 815 of file bnx2x_sp.h.

Enumerator:
BNX2X_Q_CMD_INIT 
BNX2X_Q_CMD_SETUP 
BNX2X_Q_CMD_SETUP_TX_ONLY 
BNX2X_Q_CMD_DEACTIVATE 
BNX2X_Q_CMD_ACTIVATE 
BNX2X_Q_CMD_UPDATE 
BNX2X_Q_CMD_UPDATE_TPA 
BNX2X_Q_CMD_HALT 
BNX2X_Q_CMD_CFC_DEL 
BNX2X_Q_CMD_TERMINATE 
BNX2X_Q_CMD_EMPTY 
BNX2X_Q_CMD_MAX 

Definition at line 774 of file bnx2x_sp.h.

Enumerator:
BNX2X_VLAN_MAC_ADD 
BNX2X_VLAN_MAC_DEL 
BNX2X_VLAN_MAC_MOVE 

Definition at line 115 of file bnx2x_sp.h.

Function Documentation

int bnx2x_config_mcast ( struct bnx2x bp,
struct bnx2x_mcast_ramrod_params p,
int  cmd 
)

bnx2x_config_mcast - Configure multicast MACs list.

: command to execute: BNX2X_MCAST_CMD_X

May configure a new list provided in p->mcast_list (BNX2X_MCAST_CMD_ADD), clean up (BNX2X_MCAST_CMD_DEL) or restore (BNX2X_MCAST_CMD_RESTORE) a current configuration, continue to execute the pending commands (BNX2X_MCAST_CMD_CONT).

If previous command is still pending or if number of MACs to configure is more that maximum number of MACs in one command, the current command will be enqueued to the tail of the pending commands list.

Return: 0 is operation was successfull and there are no pending completions, negative if there were errors, positive if there are pending completions.

Definition at line 3563 of file bnx2x_sp.c.

int bnx2x_config_rss ( struct bnx2x bp,
struct bnx2x_config_rss_params p 
)

bnx2x_config_rss - Updates RSS configuration according to provided parameters

Return: 0 in case of success

Definition at line 4178 of file bnx2x_sp.c.

int bnx2x_config_rx_mode ( struct bnx2x bp,
struct bnx2x_rx_mode_ramrod_params p 
)

bnx2x_config_rx_mode - Send and RX_MODE ramrod according to the provided parameters.

: Command parameters

Return: 0 - if operation was successfull and there is no pending completions, positive number - if there are pending completions, negative - if there were errors

Definition at line 2358 of file bnx2x_sp.c.

int bnx2x_config_vlan_mac ( struct bnx2x bp,
struct bnx2x_vlan_mac_ramrod_params p 
)

bnx2x_config_vlan_mac - configure VLAN/MAC/VLAN_MAC filtering rules.

: device handle :

Definition at line 1744 of file bnx2x_sp.c.

enum bnx2x_func_state bnx2x_func_get_state ( struct bnx2x bp,
struct bnx2x_func_sp_obj o 
)

Definition at line 5203 of file bnx2x_sp.c.

int bnx2x_func_state_change ( struct bnx2x bp,
struct bnx2x_func_state_params params 
)

bnx2x_func_state_change - perform Function state change transition

: device handle : parameters to perform the transaction

returns 0 in case of successfully completed transition, negative error code in case of failure, positive (EBUSY) value if there is a completion to that is still pending (possible only if RAMROD_COMP_WAIT is not set in params->ramrod_flags for asynchronous commands).

Definition at line 5817 of file bnx2x_sp.c.

void bnx2x_get_rss_ind_table ( struct bnx2x_rss_config_obj rss_obj,
u8 ind_table 
)

bnx2x_get_rss_ind_table - Return the current ind_table configuration.

: buffer to fill with the current indirection table content. Should be at least T_ETH_INDIRECTION_TABLE_SIZE bytes long.

Definition at line 4172 of file bnx2x_sp.c.

void bnx2x_init_func_obj ( struct bnx2x bp,
struct bnx2x_func_sp_obj obj,
void rdata,
dma_addr_t  rdata_mapping,
void afex_rdata,
dma_addr_t  afex_rdata_mapping,
struct bnx2x_func_sp_drv_ops drv_iface 
)

Definition at line 5782 of file bnx2x_sp.c.

void bnx2x_init_mac_credit_pool ( struct bnx2x bp,
struct bnx2x_credit_pool_obj p,
u8  func_id,
u8  func_num 
)

Definition at line 3952 of file bnx2x_sp.c.

void bnx2x_init_mac_obj ( struct bnx2x bp,
struct bnx2x_vlan_mac_obj mac_obj,
u8  cl_id,
u32  cid,
u8  func_id,
void rdata,
dma_addr_t  rdata_mapping,
int  state,
unsigned long pstate,
bnx2x_obj_type  type,
struct bnx2x_credit_pool_obj macs_pool 
)

Definition at line 1931 of file bnx2x_sp.c.

void bnx2x_init_mcast_obj ( struct bnx2x bp,
struct bnx2x_mcast_obj mcast_obj,
u8  mcast_cl_id,
u32  mcast_cid,
u8  func_id,
u8  engine_id,
void rdata,
dma_addr_t  rdata_mapping,
int  state,
unsigned long pstate,
bnx2x_obj_type  type 
)

Definition at line 3653 of file bnx2x_sp.c.

void bnx2x_init_queue_obj ( struct bnx2x bp,
struct bnx2x_queue_sp_obj obj,
u8  cl_id,
u32 cids,
u8  cid_cnt,
u8  func_id,
void rdata,
dma_addr_t  rdata_mapping,
unsigned long  type 
)

Definition at line 5170 of file bnx2x_sp.c.

void bnx2x_init_rss_config_obj ( struct bnx2x bp,
struct bnx2x_rss_config_obj rss_obj,
u8  cl_id,
u32  cid,
u8  func_id,
u8  engine_id,
void rdata,
dma_addr_t  rdata_mapping,
int  state,
unsigned long pstate,
bnx2x_obj_type  type 
)

Definition at line 4204 of file bnx2x_sp.c.

void bnx2x_init_rx_mode_obj ( struct bnx2x bp,
struct bnx2x_rx_mode_obj o 
)

Definition at line 2378 of file bnx2x_sp.c.

void bnx2x_init_vlan_credit_pool ( struct bnx2x bp,
struct bnx2x_credit_pool_obj p,
u8  func_id,
u8  func_num 
)

Definition at line 4010 of file bnx2x_sp.c.

void bnx2x_init_vlan_mac_obj ( struct bnx2x bp,
struct bnx2x_vlan_mac_obj vlan_mac_obj,
u8  cl_id,
u32  cid,
u8  func_id,
void rdata,
dma_addr_t  rdata_mapping,
int  state,
unsigned long pstate,
bnx2x_obj_type  type,
struct bnx2x_credit_pool_obj macs_pool,
struct bnx2x_credit_pool_obj vlans_pool 
)

Definition at line 2025 of file bnx2x_sp.c.

void bnx2x_init_vlan_obj ( struct bnx2x bp,
struct bnx2x_vlan_mac_obj vlan_obj,
u8  cl_id,
u32  cid,
u8  func_id,
void rdata,
dma_addr_t  rdata_mapping,
int  state,
unsigned long pstate,
bnx2x_obj_type  type,
struct bnx2x_credit_pool_obj vlans_pool 
)

Definition at line 1985 of file bnx2x_sp.c.

int bnx2x_queue_state_change ( struct bnx2x bp,
struct bnx2x_queue_state_params params 
)

bnx2x_queue_state_change - perform Queue state change transition

: device handle : parameters to perform the transition

returns 0 in case of successfully completed transition, negative error code in case of failure, positive (EBUSY) value if there is a completion to that is still pending (possible only if RAMROD_COMP_WAIT is not set in params->ramrod_flags for asynchronous commands).

Definition at line 4232 of file bnx2x_sp.c.

void bnx2x_set_mac_in_nig ( struct bnx2x bp,
bool  add,
unsigned char dev_addr,
int  index 
)

Definition at line 635 of file bnx2x_sp.c.

int bnx2x_vlan_mac_move ( struct bnx2x bp,
struct bnx2x_vlan_mac_ramrod_params p,
struct bnx2x_vlan_mac_obj dest_o 
)