Print this page
7127  remove -Wno-missing-braces from Makefile.uts


  13     OUT u64_t *data)
  14 {
  15     DbgMessage(pdev, VERBOSEl5sp, "##lm__post_initiate_offload_request\n");
  16     DbgBreakIf(iscsi->hdr.status != STATE_STATUS_INIT_CONTEXT);
  17 
  18     *command = ISCSI_RAMROD_CMD_ID_INIT;
  19     *data = iscsi->ctx_phys.as_u64;
  20 
  21     return LM_STATUS_PENDING;   
  22 }
  23 
  24 
  25 
  26 static lm_status_t lm_sc_post_update_request(
  27     IN  struct _lm_device_t *pdev,
  28     IN  lm_iscsi_state_t *iscsi,
  29     IN  lm_iscsi_slow_path_request_t *sp_req,
  30     OUT u8_t *command,
  31     OUT u64_t *data)
  32 {
  33     struct protocol_common_spe     spe       = {0};
  34 
  35     DbgMessage(pdev, VERBOSEl5sp, "##lm__post_initiate_offload_request\n");
  36     DbgBreakIf(iscsi->hdr.status != STATE_STATUS_NORMAL);
  37 
  38     *command = ISCSI_RAMROD_CMD_ID_UPDATE_CONN;
  39     spe.data.phy_address.hi = iscsi->sp_req_data.phys_addr.as_u32.high;
  40     spe.data.phy_address.lo = iscsi->sp_req_data.phys_addr.as_u32.low;
  41     *data = *((u64_t*)(&(spe.data.phy_address)));
  42 
  43     return LM_STATUS_PENDING;   
  44 }
  45 
  46 
  47 
  48 /* Desciption:
  49  *  post slow path request of given type for given iscsi state
  50  * Assumptions:
  51  *  - caller initialized request->type according to his specific request
  52  *  - caller allocated space for request->data, according to the specific request type
  53  *  - all previous slow path requests for given tcp state are already completed


 208     fcoe->hdr.state_blk     = state_blk;
 209     fcoe->hdr.state_id      = STATE_ID_UNKNOWN;
 210     fcoe->hdr.status        = STATE_STATUS_INIT;
 211     d_list_push_tail(&pdev->fcoe_info.run_time.fcoe_list, &fcoe->hdr.link);
 212 
 213     /* the rest of the fcoe state's fields that require initialization value other than 0, 
 214      * will be initialized later (when lm_fc_init_fcoe_context is called) */
 215    
 216     return LM_STATUS_SUCCESS;
 217 }
 218 
 219 
 220 
 221 void lm_sc_init_sp_req_type(
 222     struct _lm_device_t          * pdev, 
 223     lm_iscsi_state_t             * iscsi, 
 224     lm_iscsi_slow_path_request_t * lm_req, 
 225     void                         * req_input_data)
 226 {
 227     void *update_kwqe_virt;
 228     struct protocol_common_spe spe = {0};
 229 
 230     switch(lm_req->type) {  
 231     case SP_REQUEST_SC_INIT:
 232         break;
 233     case SP_REQUEST_SC_UPDATE: 
 234 
 235         spe.data.phy_address.hi = iscsi->sp_req_data.phys_addr.as_u32.high;
 236         spe.data.phy_address.lo = iscsi->sp_req_data.phys_addr.as_u32.low;
 237 
 238         update_kwqe_virt = &iscsi->sp_req_data.virt_addr->update_ctx.kwqe;
 239         mm_memcpy(update_kwqe_virt, req_input_data, sizeof(struct iscsi_kwqe_conn_update));
 240 
 241         break;
 242     default:
 243         DbgBreakMsg("lm_sc_init_sp_req_type: Illegal slow path request type!\n");
 244     }
 245 } /* lm_init_sp_req_type */


  13     OUT u64_t *data)
  14 {
  15     DbgMessage(pdev, VERBOSEl5sp, "##lm__post_initiate_offload_request\n");
  16     DbgBreakIf(iscsi->hdr.status != STATE_STATUS_INIT_CONTEXT);
  17 
  18     *command = ISCSI_RAMROD_CMD_ID_INIT;
  19     *data = iscsi->ctx_phys.as_u64;
  20 
  21     return LM_STATUS_PENDING;   
  22 }
  23 
  24 
  25 
  26 static lm_status_t lm_sc_post_update_request(
  27     IN  struct _lm_device_t *pdev,
  28     IN  lm_iscsi_state_t *iscsi,
  29     IN  lm_iscsi_slow_path_request_t *sp_req,
  30     OUT u8_t *command,
  31     OUT u64_t *data)
  32 {
  33     struct protocol_common_spe     spe       = {{0}};
  34 
  35     DbgMessage(pdev, VERBOSEl5sp, "##lm__post_initiate_offload_request\n");
  36     DbgBreakIf(iscsi->hdr.status != STATE_STATUS_NORMAL);
  37 
  38     *command = ISCSI_RAMROD_CMD_ID_UPDATE_CONN;
  39     spe.data.phy_address.hi = iscsi->sp_req_data.phys_addr.as_u32.high;
  40     spe.data.phy_address.lo = iscsi->sp_req_data.phys_addr.as_u32.low;
  41     *data = *((u64_t*)(&(spe.data.phy_address)));
  42 
  43     return LM_STATUS_PENDING;   
  44 }
  45 
  46 
  47 
  48 /* Desciption:
  49  *  post slow path request of given type for given iscsi state
  50  * Assumptions:
  51  *  - caller initialized request->type according to his specific request
  52  *  - caller allocated space for request->data, according to the specific request type
  53  *  - all previous slow path requests for given tcp state are already completed


 208     fcoe->hdr.state_blk     = state_blk;
 209     fcoe->hdr.state_id      = STATE_ID_UNKNOWN;
 210     fcoe->hdr.status        = STATE_STATUS_INIT;
 211     d_list_push_tail(&pdev->fcoe_info.run_time.fcoe_list, &fcoe->hdr.link);
 212 
 213     /* the rest of the fcoe state's fields that require initialization value other than 0, 
 214      * will be initialized later (when lm_fc_init_fcoe_context is called) */
 215    
 216     return LM_STATUS_SUCCESS;
 217 }
 218 
 219 
 220 
 221 void lm_sc_init_sp_req_type(
 222     struct _lm_device_t          * pdev, 
 223     lm_iscsi_state_t             * iscsi, 
 224     lm_iscsi_slow_path_request_t * lm_req, 
 225     void                         * req_input_data)
 226 {
 227     void *update_kwqe_virt;
 228     struct protocol_common_spe spe = {{0}};
 229 
 230     switch(lm_req->type) {  
 231     case SP_REQUEST_SC_INIT:
 232         break;
 233     case SP_REQUEST_SC_UPDATE: 
 234 
 235         spe.data.phy_address.hi = iscsi->sp_req_data.phys_addr.as_u32.high;
 236         spe.data.phy_address.lo = iscsi->sp_req_data.phys_addr.as_u32.low;
 237 
 238         update_kwqe_virt = &iscsi->sp_req_data.virt_addr->update_ctx.kwqe;
 239         mm_memcpy(update_kwqe_virt, req_input_data, sizeof(struct iscsi_kwqe_conn_update));
 240 
 241         break;
 242     default:
 243         DbgBreakMsg("lm_sc_init_sp_req_type: Illegal slow path request type!\n");
 244     }
 245 } /* lm_init_sp_req_type */