/******************************************************************************* * lm_l5if.h - L5 lm interface ******************************************************************************/ #ifndef _LM_L5IF_H #define _LM_L5IF_H //#include "57xx_iscsi_hsi_diag.h" lm_status_t lm_sc_alloc_resc( IN struct _lm_device_t *pdev ); lm_status_t lm_sc_clear_resc( IN struct _lm_device_t *pdev ); lm_status_t lm_sc_ooo_chain_establish( IN struct _lm_device_t *pdev); lm_status_t lm_fc_clear_resc( IN struct _lm_device_t *pdev ); /******************************************************************************* * Description: * * Return: ******************************************************************************/ lm_status_t lm_sc_clear_d0_resc( IN struct _lm_device_t *pdev, const u8_t cid ); lm_status_t lm_sc_init( IN struct _lm_device_t *pdev, IN struct iscsi_kwqe_init1 *req1, IN struct iscsi_kwqe_init2 *req2 ); lm_status_t lm_fc_clear_d0_resc( IN struct _lm_device_t *pdev, const u8_t cid ); lm_status_t lm_fc_init( IN struct _lm_device_t *pdev, IN struct fcoe_kwqe_init1 *init1, IN struct fcoe_kwqe_init2 *init2, IN struct fcoe_kwqe_init3 *init3); void lm_fc_recycle_cid_cb( struct _lm_device_t *pdev, void *cookie, s32_t cid); void lm_fc_comp_cb( struct _lm_device_t *pdev, struct sq_pending_command *pending); lm_status_t lm_fc_alloc_resc( IN struct _lm_device_t *pdev); /** * @description * Returns the max FCOE task supported. * In oreder to know the max task enabled refer to * pdev->params.max_fcoe_task * @param pdev * * @return u32_t */ u32_t lm_fc_max_fcoe_task_sup( IN struct _lm_device_t *pdev); lm_status_t lm_sc_alloc_con_phys_mem( IN struct _lm_device_t *pdev, IN lm_iscsi_state_t *iscsi); lm_status_t lm_sc_alloc_con_resc( IN struct _lm_device_t *pdev, IN lm_iscsi_state_t *iscsi, IN struct iscsi_kwqe_conn_offload1 *req1, IN struct iscsi_kwqe_conn_offload2 *req2, IN struct iscsi_kwqe_conn_offload3 *req3 ); lm_status_t lm_fc_alloc_con_resc( IN struct _lm_device_t *pdev, IN lm_fcoe_state_t *fcoe); void lm_sc_free_con_phys_mem( IN struct _lm_device_t *pdev, IN lm_iscsi_state_t *iscsi ); lm_status_t lm_sc_free_con_resc( IN struct _lm_device_t *pdev, IN lm_iscsi_state_t *iscsi ); lm_status_t lm_fc_free_con_resc( IN struct _lm_device_t *pdev, IN lm_fcoe_state_t *fcoe); void lm_sc_init_sp_req_type( IN struct _lm_device_t * pdev, IN lm_iscsi_state_t * tcp, IN lm_iscsi_slow_path_request_t * lm_req, IN void * req_input_data ); lm_status_t lm_sc_post_slow_path_request( IN struct _lm_device_t *pdev, IN lm_iscsi_state_t *iscsi, IN lm_iscsi_slow_path_request_t *request ); lm_status_t lm_sc_init_iscsi_state( IN struct _lm_device_t *pdev, IN lm_state_block_t *state_blk, IN lm_iscsi_state_t *iscsi ); void lm_sc_del_iscsi_state( IN struct _lm_device_t *pdev, IN lm_iscsi_state_t *iscsi ); void lm_fc_del_fcoe_state( struct _lm_device_t *pdev, lm_fcoe_state_t *fcoe); lm_status_t lm_fc_init_fcoe_state( struct _lm_device_t *pdev, lm_state_block_t *state_blk, lm_fcoe_state_t *fcoe); lm_status_t lm_sc_init_iscsi_context( IN struct _lm_device_t *pdev, IN lm_iscsi_state_t *iscsi, struct iscsi_kwqe_conn_offload1 *req1, struct iscsi_kwqe_conn_offload2 *req2, struct iscsi_kwqe_conn_offload3 *req3 ); lm_status_t lm_fc_init_fcoe_context( IN struct _lm_device_t *pdev, IN lm_fcoe_state_t *fcoe); void lm_sc_service_eq_intr( IN struct _lm_device_t *pdev, IN u8_t sb_idx ); void lm_fc_service_eq_intr( IN struct _lm_device_t *pdev, IN u8_t sb_idx); u8_t lm_sc_is_eq_completion( IN struct _lm_device_t *pdev, IN u8_t sb_idx ); u8_t lm_fc_is_eq_completion( IN struct _lm_device_t *pdev, IN u8_t sb_idx ); lm_status_t lm_sc_complete_l4_ofld_request( IN struct _lm_device_t *pdev, IN struct iscsi_kcqe *kcqe ); lm_status_t lm_sc_complete_l4_upload_request( IN struct _lm_device_t *pdev, IN u8_t op_code, IN u32_t cid); lm_status_t lm_sc_complete_slow_path_request( IN struct _lm_device_t *pdev, IN struct iscsi_kcqe *kcqe ); lm_status_t lm_fc_complete_slow_path_request( IN struct _lm_device_t *pdev, IN struct fcoe_kcqe *kcqe); lm_status_t lm_fc_post_offload_ramrod( struct _lm_device_t *pdev, lm_fcoe_state_t *fcoe); lm_status_t lm_fc_post_enable_ramrod( struct _lm_device_t *pdev, lm_fcoe_state_t *fcoe, struct fcoe_kwqe_conn_enable_disable *enable); lm_status_t lm_fc_post_disable_ramrod( struct _lm_device_t *pdev, lm_fcoe_state_t *fcoe, struct fcoe_kwqe_conn_enable_disable *destroy); lm_status_t lm_fc_post_destroy_ramrod( struct _lm_device_t *pdev); lm_status_t lm_fc_post_stat_ramrod( struct _lm_device_t *pdev, struct fcoe_kwqe_stat *stat); lm_status_t lm_fc_post_terminate_ramrod( struct _lm_device_t *pdev, lm_fcoe_state_t *fcoe); #endif /* _LM_L5IF_H */