#ifndef BNX2X_SP_VERBS
#define BNX2X_SP_VERBS
struct bnx2x;
struct eth_context;
enum { … };
bnx2x_obj_type;
enum { … };
struct bnx2x_raw_obj { … };
struct bnx2x_mac_ramrod_data { … };
struct bnx2x_vlan_ramrod_data { … };
struct bnx2x_vlan_mac_ramrod_data { … };
bnx2x_classification_ramrod_data;
enum bnx2x_vlan_mac_cmd { … };
struct bnx2x_vlan_mac_data { … };
bnx2x_exe_queue_cmd_data;
struct bnx2x_exeq_elem { … };
bnx2x_qable_obj;
bnx2x_exeq_comp_elem;
struct bnx2x_exe_queue_obj;
exe_q_validate;
exe_q_remove;
exe_q_optimize;
exe_q_execute;
exe_q_get;
struct bnx2x_exe_queue_obj { … };
struct bnx2x_vlan_mac_registry_elem { … };
enum { … };
#define BNX2X_VLAN_MAC_CMP_MASK …
#define BNX2X_VLAN_MAC_CMP_FLAGS(flags) …
struct bnx2x_vlan_mac_ramrod_params { … };
struct bnx2x_vlan_mac_obj { … };
enum { … };
enum { … };
enum { … };
struct bnx2x_rx_mode_ramrod_params { … };
struct bnx2x_rx_mode_obj { … };
struct bnx2x_mcast_list_elem { … };
bnx2x_mcast_config_data;
struct bnx2x_mcast_ramrod_params { … };
enum bnx2x_mcast_cmd { … };
struct bnx2x_mcast_obj { … };
struct bnx2x_credit_pool_obj { … };
enum { … };
struct bnx2x_config_rss_params { … };
struct bnx2x_rss_config_obj { … };
enum { … };
enum bnx2x_q_state { … };
enum bnx2x_q_logical_state { … };
enum bnx2x_queue_cmd { … };
enum { … };
enum bnx2x_q_type { … };
#define BNX2X_PRIMARY_CID_INDEX …
#define BNX2X_MULTI_TX_COS_E1X …
#define BNX2X_MULTI_TX_COS_E2_E3A0 …
#define BNX2X_MULTI_TX_COS_E3B0 …
#define BNX2X_MULTI_TX_COS …
#define MAC_PAD …
#define FW_DMAE_CMD_ID …
struct bnx2x_queue_init_params { … };
struct bnx2x_queue_terminate_params { … };
struct bnx2x_queue_cfc_del_params { … };
struct bnx2x_queue_update_params { … };
struct bnx2x_queue_update_tpa_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 { … };
enum { … };
enum bnx2x_func_state { … };
enum bnx2x_func_cmd { … };
struct bnx2x_func_hw_init_params { … };
struct bnx2x_func_hw_reset_params { … };
struct bnx2x_func_start_params { … };
struct bnx2x_func_switch_update_params { … };
struct bnx2x_func_afex_update_params { … };
struct bnx2x_func_afex_viflists_params { … };
struct bnx2x_func_tx_start_params { … };
struct bnx2x_func_set_timesync_params { … };
struct bnx2x_func_state_params { … };
struct bnx2x_func_sp_drv_ops { … };
struct bnx2x_func_sp_obj { … };
bnx2x_qable_obj;
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);
int bnx2x_get_q_logical_state(struct bnx2x *bp,
struct bnx2x_queue_sp_obj *obj);
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_vlan_mac_h_read_lock(struct bnx2x *bp,
struct bnx2x_vlan_mac_obj *o);
void bnx2x_vlan_mac_h_read_unlock(struct bnx2x *bp,
struct bnx2x_vlan_mac_obj *o);
int bnx2x_vlan_mac_h_write_lock(struct bnx2x *bp,
struct bnx2x_vlan_mac_obj *o);
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,
enum bnx2x_mcast_cmd 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_credit_pool(struct bnx2x_credit_pool_obj *p,
int base, int credit);
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);
#define PF_MAC_CREDIT_E2(bp, func_num) …
#define BNX2X_VFS_VLAN_CREDIT(bp) …
#define PF_VLAN_CREDIT_E2(bp, func_num) …
#endif