Lines Matching refs:node
22 node->display_name, __func__); \
26 efc_log_err((struct efc *)els->node->efc,\
28 els->node->display_name,\
35 efc_els_io_alloc(struct efc_node *node, u32 reqlen)
37 return efc_els_io_alloc_size(node, reqlen, EFC_ELS_RSP_LEN);
41 efc_els_io_alloc_size(struct efc_node *node, u32 reqlen, u32 rsplen)
47 efc = node->efc;
49 if (!node->els_io_enabled) {
65 els->node = node;
92 spin_lock_irqsave(&node->els_ios_lock, flags);
93 list_add_tail(&els->list_entry, &node->els_ios_list);
94 spin_unlock_irqrestore(&node->els_ios_lock, flags);
112 struct efc_node *node;
116 node = els->node;
117 efc = node->efc;
119 spin_lock_irqsave(&node->els_ios_lock, flags);
124 * If node->els_io_enabled was not checked,
127 send_empty_event = (!node->els_io_enabled &&
128 list_empty(&node->els_ios_list));
130 spin_unlock_irqrestore(&node->els_ios_lock, flags);
141 efc_scsi_io_list_empty(node->efc, node);
160 struct efc_node *node;
166 node = els->node;
167 efc = node->efc;
207 els->node->els_req_cnt--;
256 static int efc_els_send_req(struct efc_node *node, struct efc_els_io_req *els,
260 struct efc *efc = node->efc;
264 els->node->els_req_cnt++;
270 els->io.rpi = node->rnode.indicator;
271 els->io.vpi = node->nport->indicator;
272 els->io.s_id = node->nport->fc_id;
273 els->io.d_id = node->rnode.fc_id;
275 if (node->rnode.attached)
300 efc = els->node->efc;
322 struct efc_node *node;
327 node = els->node;
328 efc = node->efc;
335 /* Post node event */
343 node->display_name, els->display_name,
357 struct efc_node *node = els->node;
358 struct efc *efc = node->efc;
361 node->els_cmpl_cnt++;
369 els->io.rpi = node->rnode.indicator;
370 els->io.vpi = node->nport->indicator;
371 if (node->nport->fc_id != U32_MAX)
372 els->io.s_id = node->nport->fc_id;
375 els->io.d_id = node->rnode.fc_id;
377 if (node->attached)
393 efc_send_plogi(struct efc_node *node)
396 struct efc *efc = node->efc;
401 els = efc_els_io_alloc(node, sizeof(*plogi));
411 memcpy(plogi, node->nport->service_params, sizeof(*plogi));
416 return efc_els_send_req(node, els, EFC_DISC_IO_ELS_REQ);
420 efc_send_flogi(struct efc_node *node)
426 efc = node->efc;
430 els = efc_els_io_alloc(node, sizeof(*flogi));
441 memcpy(flogi, node->nport->service_params, sizeof(*flogi));
445 return efc_els_send_req(node, els, EFC_DISC_IO_ELS_REQ);
449 efc_send_fdisc(struct efc_node *node)
455 efc = node->efc;
459 els = efc_els_io_alloc(node, sizeof(*fdisc));
470 memcpy(fdisc, node->nport->service_params, sizeof(*fdisc));
474 return efc_els_send_req(node, els, EFC_DISC_IO_ELS_REQ);
478 efc_send_prli(struct efc_node *node)
480 struct efc *efc = node->efc;
489 els = efc_els_io_alloc(node, sizeof(*pp));
509 (node->nport->enable_ini ?
511 (node->nport->enable_tgt ?
514 return efc_els_send_req(node, els, EFC_DISC_IO_ELS_REQ);
518 efc_send_logo(struct efc_node *node)
520 struct efc *efc = node->efc;
527 sparams = (struct fc_els_flogi *)node->nport->service_params;
529 els = efc_els_io_alloc(node, sizeof(*logo));
543 hton24(logo->fl_n_port_id, node->rnode.nport->fc_id);
546 return efc_els_send_req(node, els, EFC_DISC_IO_ELS_REQ);
550 efc_send_adisc(struct efc_node *node)
552 struct efc *efc = node->efc;
556 struct efc_nport *nport = node->nport;
560 sparams = (struct fc_els_flogi *)node->nport->service_params;
562 els = efc_els_io_alloc(node, sizeof(*adisc));
579 hton24(adisc->adisc_port_id, node->rnode.nport->fc_id);
581 return efc_els_send_req(node, els, EFC_DISC_IO_ELS_REQ);
585 efc_send_scr(struct efc_node *node)
588 struct efc *efc = node->efc;
593 els = efc_els_io_alloc(node, sizeof(*req));
607 return efc_els_send_req(node, els, EFC_DISC_IO_ELS_REQ);
611 efc_send_ls_rjt(struct efc_node *node, u32 ox_id, u32 reason_code,
614 struct efc *efc = node->efc;
618 els = efc_els_io_alloc(node, sizeof(*rjt));
642 efc_send_plogi_acc(struct efc_node *node, u32 ox_id)
644 struct efc *efc = node->efc;
647 struct fc_els_flogi *req = (struct fc_els_flogi *)node->service_params;
651 els = efc_els_io_alloc(node, sizeof(*plogi));
665 memcpy(plogi, node->nport->service_params, sizeof(*plogi));
677 efc_send_flogi_p2p_acc(struct efc_node *node, u32 ox_id, u32 s_id)
679 struct efc *efc = node->efc;
685 els = efc_els_io_alloc(node, sizeof(*flogi));
700 memcpy(flogi, node->nport->service_params, sizeof(*flogi));
710 efc_send_prli_acc(struct efc_node *node, u32 ox_id)
712 struct efc *efc = node->efc;
721 els = efc_els_io_alloc(node, sizeof(*pp));
743 (node->nport->enable_ini ?
745 (node->nport->enable_tgt ?
752 efc_send_prlo_acc(struct efc_node *node, u32 ox_id)
754 struct efc *efc = node->efc;
763 els = efc_els_io_alloc(node, sizeof(*pp));
788 efc_send_ls_acc(struct efc_node *node, u32 ox_id)
790 struct efc *efc = node->efc;
796 els = efc_els_io_alloc(node, sizeof(*acc));
816 efc_send_logo_acc(struct efc_node *node, u32 ox_id)
819 struct efc *efc = node->efc;
824 els = efc_els_io_alloc(node, sizeof(*logo));
844 efc_send_adisc_acc(struct efc_node *node, u32 ox_id)
846 struct efc *efc = node->efc;
853 els = efc_els_io_alloc(node, sizeof(*adisc));
865 sparams = (struct fc_els_flogi *)node->nport->service_params;
871 hton24(adisc->adisc_port_id, node->rnode.nport->fc_id);
892 efc_ns_send_rftid(struct efc_node *node)
894 struct efc *efc = node->efc;
903 els = efc_els_io_alloc(node, sizeof(*ct));
921 hton24(ct->rftid.fr_fid.fp_fid, node->rnode.nport->fc_id);
925 return efc_els_send_req(node, els, EFC_DISC_IO_CT_REQ);
929 efc_ns_send_rffid(struct efc_node *node)
931 struct efc *efc = node->efc;
940 els = efc_els_io_alloc(node, sizeof(*ct));
958 hton24(ct->rffid.fr_fid.fp_fid, node->rnode.nport->fc_id);
959 if (node->nport->enable_ini)
961 if (node->nport->enable_tgt)
965 return efc_els_send_req(node, els, EFC_DISC_IO_CT_REQ);
969 efc_ns_send_gidpt(struct efc_node *node)
972 struct efc *efc = node->efc;
980 els = efc_els_io_alloc_size(node, sizeof(*ct), EFC_ELS_GID_PT_RSP_LEN);
1001 return efc_els_send_req(node, els, EFC_DISC_IO_CT_REQ);
1008 * from the node state machine; thus, disable state machine
1011 efc_node_post_els_resp(els->node, evt, arg);
1027 efc_send_ct_rsp(struct efc *efc, struct efc_node *node, u16 ox_id,
1034 els = efc_els_io_alloc(node, 256);
1055 els->io.rpi = node->rnode.indicator;
1056 els->io.d_id = node->rnode.fc_id;
1074 efc_send_bls_acc(struct efc_node *node, struct fc_frame_header *hdr)
1078 struct efc *efc = node->efc;
1084 bls.d_id = node->rnode.fc_id;
1085 bls.rpi = node->rnode.indicator;
1086 bls.vpi = node->nport->indicator;