#include <scsi/iscsi_proto.h>
#include "be_main.h"
#include "be.h"
#include "be_mgmt.h"
static const char * const desc_ue_status_low[] = …;
static const char * const desc_ue_status_hi[] = …;
struct be_mcc_wrb *alloc_mcc_wrb(struct beiscsi_hba *phba,
unsigned int *ref_tag)
{ … }
void free_mcc_wrb(struct be_ctrl_info *ctrl, unsigned int tag)
{ … }
int __beiscsi_mcc_compl_status(struct beiscsi_hba *phba,
unsigned int tag,
struct be_mcc_wrb **wrb,
struct be_dma_mem *mbx_cmd_mem)
{ … }
int beiscsi_mccq_compl_wait(struct beiscsi_hba *phba,
unsigned int tag,
struct be_mcc_wrb **wrb,
struct be_dma_mem *mbx_cmd_mem)
{ … }
static int beiscsi_process_mbox_compl(struct be_ctrl_info *ctrl,
struct be_mcc_compl *compl)
{ … }
static void beiscsi_process_async_link(struct beiscsi_hba *phba,
struct be_mcc_compl *compl)
{ … }
static char *beiscsi_port_misconf_event_msg[] = …;
static void beiscsi_process_async_sli(struct beiscsi_hba *phba,
struct be_mcc_compl *compl)
{ … }
void beiscsi_process_async_event(struct beiscsi_hba *phba,
struct be_mcc_compl *compl)
{ … }
int beiscsi_process_mcc_compl(struct be_ctrl_info *ctrl,
struct be_mcc_compl *compl)
{ … }
void be_mcc_notify(struct beiscsi_hba *phba, unsigned int tag)
{ … }
static int be_mbox_db_ready_poll(struct be_ctrl_info *ctrl)
{ … }
static int be_mbox_notify(struct be_ctrl_info *ctrl)
{ … }
void be_wrb_hdr_prepare(struct be_mcc_wrb *wrb, u32 payload_len,
bool embedded, u8 sge_cnt)
{ … }
void be_cmd_hdr_prepare(struct be_cmd_req_hdr *req_hdr,
u8 subsystem, u8 opcode, u32 cmd_len)
{ … }
static void be_cmd_page_addrs_prepare(struct phys_addr *pages, u32 max_pages,
struct be_dma_mem *mem)
{ … }
static u32 eq_delay_to_mult(u32 usec_delay)
{ … }
struct be_mcc_wrb *wrb_from_mbox(struct be_dma_mem *mbox_mem)
{ … }
int beiscsi_cmd_eq_create(struct be_ctrl_info *ctrl,
struct be_queue_info *eq, int eq_delay)
{ … }
int beiscsi_cmd_cq_create(struct be_ctrl_info *ctrl,
struct be_queue_info *cq, struct be_queue_info *eq,
bool sol_evts, bool no_delay, int coalesce_wm)
{ … }
static u32 be_encoded_q_len(int q_len)
{ … }
int beiscsi_cmd_mccq_create(struct beiscsi_hba *phba,
struct be_queue_info *mccq,
struct be_queue_info *cq)
{ … }
int beiscsi_cmd_q_destroy(struct be_ctrl_info *ctrl, struct be_queue_info *q,
int queue_type)
{ … }
int be_cmd_create_default_pdu_queue(struct be_ctrl_info *ctrl,
struct be_queue_info *cq,
struct be_queue_info *dq, int length,
int entry_size, uint8_t is_header,
uint8_t ulp_num)
{ … }
int be_cmd_wrbq_create(struct be_ctrl_info *ctrl,
struct be_dma_mem *q_mem,
struct be_queue_info *wrbq,
struct hwi_wrb_context *pwrb_context,
uint8_t ulp_num)
{ … }
int be_cmd_iscsi_post_template_hdr(struct be_ctrl_info *ctrl,
struct be_dma_mem *q_mem)
{ … }
int be_cmd_iscsi_remove_template_hdr(struct be_ctrl_info *ctrl)
{ … }
int be_cmd_iscsi_post_sgl_pages(struct be_ctrl_info *ctrl,
struct be_dma_mem *q_mem,
u32 page_offset, u32 num_pages)
{ … }
int be_cmd_set_vlan(struct beiscsi_hba *phba,
uint16_t vlan_tag)
{ … }
int beiscsi_check_supported_fw(struct be_ctrl_info *ctrl,
struct beiscsi_hba *phba)
{ … }
int beiscsi_get_fw_config(struct be_ctrl_info *ctrl,
struct beiscsi_hba *phba)
{ … }
int beiscsi_get_port_name(struct be_ctrl_info *ctrl, struct beiscsi_hba *phba)
{ … }
int beiscsi_set_host_data(struct beiscsi_hba *phba)
{ … }
int beiscsi_set_uer_feature(struct beiscsi_hba *phba)
{ … }
static u32 beiscsi_get_post_stage(struct beiscsi_hba *phba)
{ … }
int beiscsi_check_fw_rdy(struct beiscsi_hba *phba)
{ … }
int beiscsi_cmd_function_reset(struct beiscsi_hba *phba)
{ … }
int beiscsi_cmd_special_wrb(struct be_ctrl_info *ctrl, u32 load)
{ … }
int beiscsi_init_sliport(struct beiscsi_hba *phba)
{ … }
int beiscsi_cmd_iscsi_cleanup(struct beiscsi_hba *phba, unsigned short ulp)
{ … }
int beiscsi_detect_ue(struct beiscsi_hba *phba)
{ … }
int beiscsi_detect_tpe(struct beiscsi_hba *phba)
{ … }