Lines Matching refs:rnode

606 efc_cmd_node_alloc(struct efc *efc, struct efc_remote_node *rnode, u32 fc_addr,  in efc_cmd_node_alloc()  argument
610 if (rnode->indicator != U32_MAX) { in efc_cmd_node_alloc()
613 fc_addr, rnode->indicator); in efc_cmd_node_alloc()
618 rnode->nport = NULL; in efc_cmd_node_alloc()
621 &rnode->indicator, &rnode->index)) { in efc_cmd_node_alloc()
627 rnode->fc_id = fc_addr; in efc_cmd_node_alloc()
628 rnode->nport = nport; in efc_cmd_node_alloc()
636 struct efc_remote_node *rnode = arg; in efc_cmd_node_attach_cb() local
644 rnode->attached = false; in efc_cmd_node_attach_cb()
647 rnode->attached = true; in efc_cmd_node_attach_cb()
651 efc_remote_node_cb(efc, evt, rnode); in efc_cmd_node_attach_cb()
657 efc_cmd_node_attach(struct efc *efc, struct efc_remote_node *rnode, in efc_cmd_node_attach() argument
663 if (!rnode || !sparms) { in efc_cmd_node_attach()
665 rnode, sparms); in efc_cmd_node_attach()
673 if (rnode->index == U32_MAX) { in efc_cmd_node_attach()
679 if (!sli_cmd_reg_rpi(efc->sli, buf, rnode->indicator, in efc_cmd_node_attach()
680 rnode->nport->indicator, rnode->fc_id, sparms, 0, 0)) in efc_cmd_node_attach()
682 efc_cmd_node_attach_cb, rnode); in efc_cmd_node_attach()
688 efc_node_free_resources(struct efc *efc, struct efc_remote_node *rnode) in efc_node_free_resources() argument
692 if (!rnode) { in efc_node_free_resources()
693 efc_log_err(efc, "bad parameter rnode=%p\n", rnode); in efc_node_free_resources()
697 if (rnode->nport) { in efc_node_free_resources()
698 if (rnode->attached) { in efc_node_free_resources()
702 if (rnode->indicator != U32_MAX) { in efc_node_free_resources()
704 rnode->indicator)) { in efc_node_free_resources()
707 rnode->indicator, rnode->fc_id); in efc_node_free_resources()
710 rnode->indicator = U32_MAX; in efc_node_free_resources()
711 rnode->index = U32_MAX; in efc_node_free_resources()
722 struct efc_remote_node *rnode = arg; in efc_cmd_node_free_cb() local
738 if (!rnode->attached || in efc_cmd_node_free_cb()
744 rnode->attached = false; in efc_cmd_node_free_cb()
748 efc_remote_node_cb(efc, evt, rnode); in efc_cmd_node_free_cb()
754 efc_cmd_node_detach(struct efc *efc, struct efc_remote_node *rnode) in efc_cmd_node_detach() argument
759 if (!rnode) { in efc_cmd_node_detach()
760 efc_log_err(efc, "bad parameter rnode=%p\n", rnode); in efc_cmd_node_detach()
764 if (rnode->nport) { in efc_cmd_node_detach()
765 if (!rnode->attached) in efc_cmd_node_detach()
770 if (!sli_cmd_unreg_rpi(efc->sli, buf, rnode->indicator, in efc_cmd_node_detach()
773 efc_cmd_node_free_cb, rnode); in efc_cmd_node_detach()