Linux Kernel
3.7.1
|
Go to the source code of this file.
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) |
#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 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.
|
read |
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.
anonymous enum |
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 |
Definition at line 52 of file bnx2x_sp.h.
anonymous 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 |
Definition at line 260 of file bnx2x_sp.h.
anonymous enum |
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
Definition at line 444 of file bnx2x_sp.h.
anonymous 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 |
Definition at line 449 of file bnx2x_sp.h.
anonymous enum |
Definition at line 521 of file bnx2x_sp.h.
anonymous 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 |
Definition at line 687 of file bnx2x_sp.h.
anonymous enum |
Definition at line 744 of file bnx2x_sp.h.
anonymous enum |
Definition at line 790 of file bnx2x_sp.h.
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 |
Definition at line 1055 of file bnx2x_sp.h.
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 |
Definition at line 1046 of file bnx2x_sp.h.
enum bnx2x_obj_type |
Definition at line 45 of file bnx2x_sp.h.
enum bnx2x_q_state |
Definition at line 760 of file bnx2x_sp.h.
enum bnx2x_q_type |
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.
enum bnx2x_queue_cmd |
Definition at line 774 of file bnx2x_sp.h.
enum bnx2x_vlan_mac_cmd |
Definition at line 115 of file bnx2x_sp.h.
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.
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 | ||
) |