32 static void bfa_fcs_itnim_timeout(
void *
arg);
34 static void bfa_fcs_itnim_send_prli(
void *itnim_cbarg,
36 static void bfa_fcs_itnim_prli_response(
void *fcsarg,
53 static void bfa_fcs_itnim_sm_hal_rport_online(
struct bfa_fcs_itnim_s *itnim,
88 bfa_fcs_itnim_send_prli(itnim,
NULL);
100 bfa_fcs_itnim_free(itnim);
136 bfa_fcs_itnim_free(itnim);
157 bfa_fcs_itnim_sm_hal_rport_online);
165 bfa_fcs_itnim_timeout, itnim,
188 bfa_fcs_itnim_free(itnim);
207 itnim->
rport->bfa_rport, itnim);
226 bfa_fcs_itnim_free(itnim);
247 bfa_fcs_itnim_send_prli(itnim,
NULL);
271 bfa_fcs_itnim_free(itnim);
295 wwn2str(rpwwn_buf, itnim->
rport->pwwn);
297 "Target (WWN = %s) is online for initiator (WWN = %s)\n",
298 rpwwn_buf, lpwwn_buf);
309 bfa_fcs_itnim_free(itnim);
334 wwn2str(rpwwn_buf, itnim->
rport->pwwn);
337 "Target (WWN = %s) connectivity lost for "
338 "initiator (WWN = %s)\n", rpwwn_buf, lpwwn_buf);
342 "Target (WWN = %s) offlined by initiator (WWN = %s)\n",
343 rpwwn_buf, lpwwn_buf);
350 bfa_fcs_itnim_free(itnim);
373 bfa_fcs_itnim_free(itnim);
412 bfa_fcs_itnim_free(itnim);
436 aen_entry->aen_data.itnim.vf_id = rport->
port->fabric->vf_id;
440 aen_entry->aen_data.itnim.rpwwn = rport->
pwwn;
448 bfa_fcs_itnim_send_prli(
void *itnim_cbarg,
struct bfa_fcxp_s *fcxp_alloced)
459 fcxp = fcxp_alloced ? fcxp_alloced :
462 itnim->
stats.fcxp_alloc_wait++;
464 bfa_fcs_itnim_send_prli, itnim,
BFA_TRUE);
474 bfa_fcs_itnim_prli_response, (
void *)itnim,
477 itnim->
stats.prli_sent++;
482 bfa_fcs_itnim_prli_response(
void *fcsarg,
struct bfa_fcxp_s *fcxp,
void *cbarg,
498 itnim->
stats.prli_rsp_err++;
506 prli_resp = (
struct fc_prli_s *) els_cmd;
514 if (prli_resp->
parampage.servparams.initiator) {
516 itnim->
rport->scsi_function =
518 itnim->
stats.prli_rsp_acc++;
519 itnim->
stats.initiator++;
525 itnim->
stats.prli_rsp_parse_err++;
530 sparams = &prli_resp->
parampage.servparams;
536 itnim->
stats.prli_rsp_acc++;
544 itnim->
stats.prli_rsp_rjt++;
554 bfa_fcs_itnim_timeout(
void *
arg)
558 itnim->
stats.timeout++;
639 itnim->
stats.onlines++;
651 itnim->
stats.offlines++;
663 itnim->
stats.initiator++;
674 switch (bfa_sm_to_state(itnim_sm_table, itnim->
sm)) {
774 attr->
state = bfa_sm_to_state(itnim_sm_table, itnim->
sm);