drivers/scsi/elx/efct/efct_driver.c
100
efct->efcport = efc;
drivers/scsi/elx/efct/efct_driver.c
102
memcpy(&efc->tt, tt, sizeof(*tt));
drivers/scsi/elx/efct/efct_driver.c
103
efc->base = efct;
drivers/scsi/elx/efct/efct_driver.c
104
efc->pci = efct->pci;
drivers/scsi/elx/efct/efct_driver.c
106
efc->def_wwnn = efct_get_wwnn(&efct->hw);
drivers/scsi/elx/efct/efct_driver.c
107
efc->def_wwpn = efct_get_wwpn(&efct->hw);
drivers/scsi/elx/efct/efct_driver.c
108
efc->enable_tgt = 1;
drivers/scsi/elx/efct/efct_driver.c
109
efc->log_level = EFC_LOG_LIB;
drivers/scsi/elx/efct/efct_driver.c
112
efc->max_xfer_size = sli->sge_supported_length *
drivers/scsi/elx/efct/efct_driver.c
114
efc->sli = sli;
drivers/scsi/elx/efct/efct_driver.c
115
efc->fcfi = efct->hw.fcf_indicator;
drivers/scsi/elx/efct/efct_driver.c
117
rc = efcport_init(efc);
drivers/scsi/elx/efct/efct_driver.c
119
efc_log_err(efc, "efcport_init failed\n");
drivers/scsi/elx/efct/efct_driver.c
92
struct efc *efc;
drivers/scsi/elx/efct/efct_driver.c
96
efc = kzalloc_obj(*efc);
drivers/scsi/elx/efct/efct_driver.c
97
if (!efc)
drivers/scsi/elx/efct/efct_driver.h
68
struct efc *efcport;
drivers/scsi/elx/efct/efct_hw.c
2560
efct_efc_bls_send(struct efc *efc, u32 type, struct sli_bls_params *bls)
drivers/scsi/elx/efct/efct_hw.c
2562
struct efct *efct = efc->base;
drivers/scsi/elx/efct/efct_hw.c
2694
efct_els_hw_srrs_send(struct efc *efc, struct efc_disc_io *io)
drivers/scsi/elx/efct/efct_hw.c
2696
struct efct *efct = efc->base;
drivers/scsi/elx/efct/efct_hw.c
29
int (*callback)(struct efc *efc, int status, u8 *mqe, void *arg);
drivers/scsi/elx/efct/efct_hw.h
670
efct_efc_hw_sequence_free(struct efc *efc, struct efc_hw_sequence *seq);
drivers/scsi/elx/efct/efct_hw.h
701
efct_els_hw_srrs_send(struct efc *efc, struct efc_disc_io *io);
drivers/scsi/elx/efct/efct_hw.h
703
efct_efc_bls_send(struct efc *efc, u32 type, struct sli_bls_params *bls);
drivers/scsi/elx/efct/efct_hw_queues.c
672
efct_efc_hw_sequence_free(struct efc *efc, struct efc_hw_sequence *seq)
drivers/scsi/elx/efct/efct_hw_queues.c
674
struct efct *efct = efc->base;
drivers/scsi/elx/efct/efct_lio.c
1040
efct = node->efc->base;
drivers/scsi/elx/efct/efct_lio.c
105
efc = efct->efcport;
drivers/scsi/elx/efct/efct_lio.c
1061
efc_scsi_del_initiator_complete(node->efc, node);
drivers/scsi/elx/efct/efct_lio.c
1070
struct efct *efct = node->efc->base;
drivers/scsi/elx/efct/efct_lio.c
1138
efct_scsi_tgt_new_nport(struct efc *efc, struct efc_nport *nport)
drivers/scsi/elx/efct/efct_lio.c
1140
struct efct *efct = nport->efc->base;
drivers/scsi/elx/efct/efct_lio.c
1149
efct_scsi_tgt_del_nport(struct efc *efc, struct efc_nport *nport)
drivers/scsi/elx/efct/efct_lio.c
1151
efc_log_debug(efc, "Del SPORT: %s\n", nport->display_name);
drivers/scsi/elx/efct/efct_lio.c
1221
int efct_scsi_new_initiator(struct efc *efc, struct efc_node *node)
drivers/scsi/elx/efct/efct_lio.c
1223
struct efct *efct = node->efc->base;
drivers/scsi/elx/efct/efct_lio.c
125
if (efc->domain && efc->domain->nport)
drivers/scsi/elx/efct/efct_lio.c
1257
efc_scsi_del_initiator_complete(node->efc, node);
drivers/scsi/elx/efct/efct_lio.c
126
efct_scsi_tgt_del_nport(efc, efc->domain->nport);
drivers/scsi/elx/efct/efct_lio.c
1278
int efct_scsi_del_initiator(struct efc *efc, struct efc_node *node, int reason)
drivers/scsi/elx/efct/efct_lio.c
1280
struct efct *efct = node->efc->base;
drivers/scsi/elx/efct/efct_lio.c
155
struct efc *efc;
drivers/scsi/elx/efct/efct_lio.c
167
efc = efct->efcport;
drivers/scsi/elx/efct/efct_lio.c
173
if (efc->domain) {
drivers/scsi/elx/efct/efct_lio.c
176
ret = efc_nport_vport_new(efc->domain,
drivers/scsi/elx/efct/efct_lio.c
188
if (!(efc_vport_create_spec(efc, lio_vport->npiv_wwnn,
drivers/scsi/elx/efct/efct_lio.c
200
if (efc->domain) {
drivers/scsi/elx/efct/efct_lio.c
201
efc_nport_vport_del(efct->efcport, efc->domain,
drivers/scsi/elx/efct/efct_lio.c
96
struct efc *efc;
drivers/scsi/elx/efct/efct_scsi.h
149
efct_scsi_tgt_new_nport(struct efc *efc, struct efc_nport *nport);
drivers/scsi/elx/efct/efct_scsi.h
151
efct_scsi_tgt_del_nport(struct efc *efc, struct efc_nport *nport);
drivers/scsi/elx/efct/efct_scsi.h
154
efct_scsi_new_initiator(struct efc *efc, struct efc_node *node);
drivers/scsi/elx/efct/efct_scsi.h
162
efct_scsi_del_initiator(struct efc *efc, struct efc_node *node, int reason);
drivers/scsi/elx/efct/efct_xport.c
519
efct_xport_domain_free_cb(struct efc *efc, void *arg)
drivers/scsi/elx/efct/efct_xport.c
682
struct efc *efc = efct->efcport;
drivers/scsi/elx/efct/efct_xport.c
685
if (efc->domain && efc->domain->nport) {
drivers/scsi/elx/efct/efct_xport.c
686
nport = efc->domain->nport;
drivers/scsi/elx/efct/efct_xport.c
696
struct efc *efc = efct->efcport;
drivers/scsi/elx/efct/efct_xport.c
699
if (efc->domain && efc->domain->nport) {
drivers/scsi/elx/efct/efct_xport.c
700
if (efc->domain->is_loop) {
drivers/scsi/elx/efct/efct_xport.c
703
struct efc_nport *nport = efc->domain->nport;
drivers/scsi/elx/efct/efct_xport.c
744
struct efc *efc = efct->efcport;
drivers/scsi/elx/efct/efct_xport.c
749
if (!efc->domain || !efc->domain->nport) {
drivers/scsi/elx/efct/efct_xport.c
795
struct efc *efc = efct->efcport;
drivers/scsi/elx/efct/efct_xport.c
797
if (efc->domain) {
drivers/scsi/elx/efct/efct_xport.c
800
efc->domain->flogi_service_params;
drivers/scsi/elx/include/efc_common.h
22
#define efc_log_crit(efc, fmt, args...) \
drivers/scsi/elx/include/efc_common.h
23
dev_crit(&((efc)->pci)->dev, fmt, ##args)
drivers/scsi/elx/include/efc_common.h
25
#define efc_log_err(efc, fmt, args...) \
drivers/scsi/elx/include/efc_common.h
26
dev_err(&((efc)->pci)->dev, fmt, ##args)
drivers/scsi/elx/include/efc_common.h
28
#define efc_log_warn(efc, fmt, args...) \
drivers/scsi/elx/include/efc_common.h
29
dev_warn(&((efc)->pci)->dev, fmt, ##args)
drivers/scsi/elx/include/efc_common.h
31
#define efc_log_info(efc, fmt, args...) \
drivers/scsi/elx/include/efc_common.h
32
dev_info(&((efc)->pci)->dev, fmt, ##args)
drivers/scsi/elx/include/efc_common.h
34
#define efc_log_debug(efc, fmt, args...) \
drivers/scsi/elx/include/efc_common.h
35
dev_dbg(&((efc)->pci)->dev, fmt, ##args)
drivers/scsi/elx/libefc/efc.h
37
efc_log_debug(domain->efc, "[domain:%s] %-20s %-20s\n", \
drivers/scsi/elx/libefc/efc.h
41
efc_log_debug(domain->efc, \
drivers/scsi/elx/libefc/efc.h
45
efc_log_debug(node->efc, "[%s] %-20s %-20s\n", \
drivers/scsi/elx/libefc/efc.h
49
efc_log_debug(nport->efc, \
drivers/scsi/elx/libefc/efc_cmds.c
105
efc_nport_alloc_init_vpi_cb(struct efc *efc, int status, u8 *mqe, void *arg)
drivers/scsi/elx/libefc/efc_cmds.c
121
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_cmds.c
131
rc = sli_cmd_init_vpi(efc->sli, data,
drivers/scsi/elx/libefc/efc_cmds.c
134
efc_log_err(efc, "INIT_VPI format failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
139
rc = efc->tt.issue_mbox_rqst(efc->base, data,
drivers/scsi/elx/libefc/efc_cmds.c
142
efc_log_err(efc, "INIT_VPI command failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
148
efc_nport_alloc_read_sparm64_cb(struct efc *efc, int status, u8 *mqe, void *arg)
drivers/scsi/elx/libefc/efc_cmds.c
15
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_cmds.c
165
dma_free_coherent(&efc->pci->dev, nport->dma.size, nport->dma.virt,
drivers/scsi/elx/libefc/efc_cmds.c
173
efc_nport_alloc_read_sparm64(struct efc *efc, struct efc_nport *nport)
drivers/scsi/elx/libefc/efc_cmds.c
180
nport->dma.virt = dma_alloc_coherent(&efc->pci->dev,
drivers/scsi/elx/libefc/efc_cmds.c
184
efc_log_err(efc, "Failed to allocate DMA memory\n");
drivers/scsi/elx/libefc/efc_cmds.c
189
rc = sli_cmd_read_sparm64(efc->sli, data,
drivers/scsi/elx/libefc/efc_cmds.c
192
efc_log_err(efc, "READ_SPARM64 format failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
197
rc = efc->tt.issue_mbox_rqst(efc->base, data,
drivers/scsi/elx/libefc/efc_cmds.c
200
efc_log_err(efc, "READ_SPARM64 command failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
206
efc_cmd_nport_alloc(struct efc *efc, struct efc_nport *nport,
drivers/scsi/elx/libefc/efc_cmds.c
22
dma_free_coherent(&efc->pci->dev, nport->dma.size,
drivers/scsi/elx/libefc/efc_cmds.c
221
if (sli_resource_alloc(efc->sli, SLI4_RSRC_VPI,
drivers/scsi/elx/libefc/efc_cmds.c
223
efc_log_err(efc, "VPI allocation failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
233
efc_nport_alloc_read_sparm64(efc, nport);
drivers/scsi/elx/libefc/efc_cmds.c
238
efc_log_err(efc, "need WWN for physical port\n");
drivers/scsi/elx/libefc/efc_cmds.c
239
sli_resource_free(efc->sli, SLI4_RSRC_VPI, nport->indicator);
drivers/scsi/elx/libefc/efc_cmds.c
247
efc_nport_attach_reg_vpi_cb(struct efc *efc, int status, u8 *mqe,
drivers/scsi/elx/libefc/efc_cmds.c
263
efc_cmd_nport_attach(struct efc *efc, struct efc_nport *nport, u32 fc_id)
drivers/scsi/elx/libefc/efc_cmds.c
269
efc_log_err(efc, "bad param(s) nport=%p\n", nport);
drivers/scsi/elx/libefc/efc_cmds.c
276
rc = sli_cmd_reg_vpi(efc->sli, buf, nport->fc_id,
drivers/scsi/elx/libefc/efc_cmds.c
28
sli_resource_free(efc->sli, SLI4_RSRC_VPI, nport->indicator);
drivers/scsi/elx/libefc/efc_cmds.c
280
efc_log_err(efc, "REG_VPI format failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
285
rc = efc->tt.issue_mbox_rqst(efc->base, buf,
drivers/scsi/elx/libefc/efc_cmds.c
288
efc_log_err(efc, "REG_VPI command failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
298
efc_cmd_nport_free(struct efc *efc, struct efc_nport *nport)
drivers/scsi/elx/libefc/efc_cmds.c
30
efc_nport_cb(efc, evt, nport);
drivers/scsi/elx/libefc/efc_cmds.c
301
efc_log_err(efc, "bad parameter(s) nport=%p\n", nport);
drivers/scsi/elx/libefc/efc_cmds.c
319
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_cmds.c
324
efc_log_debug(efc, "bad status vfi=%#x st=%x hdr=%x\n",
drivers/scsi/elx/libefc/efc_cmds.c
336
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_cmds.c
340
dma_free_coherent(&efc->pci->dev,
drivers/scsi/elx/libefc/efc_cmds.c
347
sli_resource_free(efc->sli, SLI4_RSRC_VFI, domain->indicator);
drivers/scsi/elx/libefc/efc_cmds.c
349
efc_domain_cb(efc, evt, domain);
drivers/scsi/elx/libefc/efc_cmds.c
356
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_cmds.c
36
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_cmds.c
362
efc_domain_cb(efc, domain_evt, domain);
drivers/scsi/elx/libefc/efc_cmds.c
366
efc_domain_alloc_read_sparm64_cb(struct efc *efc, int status, u8 *mqe,
drivers/scsi/elx/libefc/efc_cmds.c
385
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_cmds.c
389
rc = sli_cmd_read_sparm64(efc->sli, data, &domain->dma, 0);
drivers/scsi/elx/libefc/efc_cmds.c
391
efc_log_err(efc, "READ_SPARM64 format failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
397
rc = efc->tt.issue_mbox_rqst(efc->base, data,
drivers/scsi/elx/libefc/efc_cmds.c
400
efc_log_err(efc, "READ_SPARM64 command failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
407
efc_domain_alloc_init_vfi_cb(struct efc *efc, int status, u8 *mqe,
drivers/scsi/elx/libefc/efc_cmds.c
41
efc_log_debug(efc, "bad status vpi=%#x st=%x hdr=%x\n",
drivers/scsi/elx/libefc/efc_cmds.c
425
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_cmds.c
434
domain->fcf_indicator = efc->fcfi;
drivers/scsi/elx/libefc/efc_cmds.c
435
rc = sli_cmd_init_vfi(efc->sli, data, domain->indicator,
drivers/scsi/elx/libefc/efc_cmds.c
438
efc_log_err(efc, "INIT_VFI format failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
444
efc_log_err(efc, "%s issue mbox\n", __func__);
drivers/scsi/elx/libefc/efc_cmds.c
445
rc = efc->tt.issue_mbox_rqst(efc->base, data,
drivers/scsi/elx/libefc/efc_cmds.c
448
efc_log_err(efc, "INIT_VFI command failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
455
efc_cmd_domain_alloc(struct efc *efc, struct efc_domain *domain, u32 fcf)
drivers/scsi/elx/libefc/efc_cmds.c
460
efc_log_err(efc, "bad parameter(s) domain=%p nport=%p\n",
drivers/scsi/elx/libefc/efc_cmds.c
467
domain->dma.virt = dma_alloc_coherent(&efc->pci->dev,
drivers/scsi/elx/libefc/efc_cmds.c
471
efc_log_err(efc, "Failed to allocate DMA memory\n");
drivers/scsi/elx/libefc/efc_cmds.c
479
if (sli_resource_alloc(efc->sli, SLI4_RSRC_VFI, &domain->indicator,
drivers/scsi/elx/libefc/efc_cmds.c
481
efc_log_err(efc, "VFI allocation failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
483
dma_free_coherent(&efc->pci->dev,
drivers/scsi/elx/libefc/efc_cmds.c
496
efc_domain_attach_reg_vfi_cb(struct efc *efc, int status, u8 *mqe,
drivers/scsi/elx/libefc/efc_cmds.c
50
efc_nport_free_unreg_vpi_cb(struct efc *efc, int status, u8 *mqe, void *arg)
drivers/scsi/elx/libefc/efc_cmds.c
513
efc_cmd_domain_attach(struct efc *efc, struct efc_domain *domain, u32 fc_id)
drivers/scsi/elx/libefc/efc_cmds.c
519
efc_log_err(efc, "bad param(s) domain=%p\n", domain);
drivers/scsi/elx/libefc/efc_cmds.c
525
rc = sli_cmd_reg_vfi(efc->sli, buf, SLI4_BMBX_SIZE, domain->indicator,
drivers/scsi/elx/libefc/efc_cmds.c
530
efc_log_err(efc, "REG_VFI format failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
534
rc = efc->tt.issue_mbox_rqst(efc->base, buf,
drivers/scsi/elx/libefc/efc_cmds.c
537
efc_log_err(efc, "REG_VFI command failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
550
efc_domain_free_unreg_vfi_cb(struct efc *efc, int status, u8 *mqe, void *arg)
drivers/scsi/elx/libefc/efc_cmds.c
569
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_cmds.c
573
rc = sli_cmd_unreg_vfi(efc->sli, data, domain->indicator,
drivers/scsi/elx/libefc/efc_cmds.c
576
efc_log_err(efc, "UNREG_VFI format failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
580
rc = efc->tt.issue_mbox_rqst(efc->base, data,
drivers/scsi/elx/libefc/efc_cmds.c
583
efc_log_err(efc, "UNREG_VFI command failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
594
efc_cmd_domain_free(struct efc *efc, struct efc_domain *domain)
drivers/scsi/elx/libefc/efc_cmds.c
597
efc_log_err(efc, "bad parameter(s) domain=%p\n", domain);
drivers/scsi/elx/libefc/efc_cmds.c
606
efc_cmd_node_alloc(struct efc *efc, struct efc_remote_node *rnode, u32 fc_addr,
drivers/scsi/elx/libefc/efc_cmds.c
611
efc_log_err(efc,
drivers/scsi/elx/libefc/efc_cmds.c
620
if (sli_resource_alloc(efc->sli, SLI4_RSRC_RPI,
drivers/scsi/elx/libefc/efc_cmds.c
622
efc_log_err(efc, "RPI allocation failure addr=%#x\n",
drivers/scsi/elx/libefc/efc_cmds.c
634
efc_cmd_node_attach_cb(struct efc *efc, int status, u8 *mqe, void *arg)
drivers/scsi/elx/libefc/efc_cmds.c
642
efc_log_debug(efc, "bad status cqe=%#x mqe=%#x\n", status,
drivers/scsi/elx/libefc/efc_cmds.c
651
efc_remote_node_cb(efc, evt, rnode);
drivers/scsi/elx/libefc/efc_cmds.c
657
efc_cmd_node_attach(struct efc *efc, struct efc_remote_node *rnode,
drivers/scsi/elx/libefc/efc_cmds.c
664
efc_log_err(efc, "bad parameter(s) rnode=%p sparms=%p\n",
drivers/scsi/elx/libefc/efc_cmds.c
67
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_cmds.c
674
efc_log_err(efc, "bad parameter rnode->index invalid\n");
drivers/scsi/elx/libefc/efc_cmds.c
679
if (!sli_cmd_reg_rpi(efc->sli, buf, rnode->indicator,
drivers/scsi/elx/libefc/efc_cmds.c
681
rc = efc->tt.issue_mbox_rqst(efc->base, buf,
drivers/scsi/elx/libefc/efc_cmds.c
688
efc_node_free_resources(struct efc *efc, struct efc_remote_node *rnode)
drivers/scsi/elx/libefc/efc_cmds.c
693
efc_log_err(efc, "bad parameter rnode=%p\n", rnode);
drivers/scsi/elx/libefc/efc_cmds.c
699
efc_log_err(efc, "rnode is still attached\n");
drivers/scsi/elx/libefc/efc_cmds.c
703
if (sli_resource_free(efc->sli, SLI4_RSRC_RPI,
drivers/scsi/elx/libefc/efc_cmds.c
705
efc_log_err(efc,
drivers/scsi/elx/libefc/efc_cmds.c
71
rc = sli_cmd_unreg_vpi(efc->sli, data, nport->indicator,
drivers/scsi/elx/libefc/efc_cmds.c
720
efc_cmd_node_free_cb(struct efc *efc, int status, u8 *mqe, void *arg)
drivers/scsi/elx/libefc/efc_cmds.c
729
efc_log_debug(efc, "bad status cqe=%#x mqe=%#x\n", status,
drivers/scsi/elx/libefc/efc_cmds.c
74
efc_log_err(efc, "UNREG_VPI format failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
748
efc_remote_node_cb(efc, evt, rnode);
drivers/scsi/elx/libefc/efc_cmds.c
754
efc_cmd_node_detach(struct efc *efc, struct efc_remote_node *rnode)
drivers/scsi/elx/libefc/efc_cmds.c
760
efc_log_err(efc, "bad parameter rnode=%p\n", rnode);
drivers/scsi/elx/libefc/efc_cmds.c
770
if (!sli_cmd_unreg_rpi(efc->sli, buf, rnode->indicator,
drivers/scsi/elx/libefc/efc_cmds.c
772
rc = efc->tt.issue_mbox_rqst(efc->base, buf,
drivers/scsi/elx/libefc/efc_cmds.c
776
efc_log_err(efc, "UNREG_RPI failed\n");
drivers/scsi/elx/libefc/efc_cmds.c
79
rc = efc->tt.issue_mbox_rqst(efc->base, data,
drivers/scsi/elx/libefc/efc_cmds.c
82
efc_log_err(efc, "UNREG_VPI command failure\n");
drivers/scsi/elx/libefc/efc_cmds.c
90
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_cmds.c
93
efc_nport_cb(efc, evt, nport);
drivers/scsi/elx/libefc/efc_cmds.h
12
efc_cmd_nport_alloc(struct efc *efc, struct efc_nport *nport,
drivers/scsi/elx/libefc/efc_cmds.h
15
efc_cmd_nport_attach(struct efc *efc, struct efc_nport *nport, u32 fc_id);
drivers/scsi/elx/libefc/efc_cmds.h
17
efc_cmd_nport_free(struct efc *efc, struct efc_nport *nport);
drivers/scsi/elx/libefc/efc_cmds.h
19
efc_cmd_domain_alloc(struct efc *efc, struct efc_domain *domain, u32 fcf);
drivers/scsi/elx/libefc/efc_cmds.h
21
efc_cmd_domain_attach(struct efc *efc, struct efc_domain *domain, u32 fc_id);
drivers/scsi/elx/libefc/efc_cmds.h
23
efc_cmd_domain_free(struct efc *efc, struct efc_domain *domain);
drivers/scsi/elx/libefc/efc_cmds.h
25
efc_cmd_node_detach(struct efc *efc, struct efc_remote_node *rnode);
drivers/scsi/elx/libefc/efc_cmds.h
27
efc_node_free_resources(struct efc *efc, struct efc_remote_node *rnode);
drivers/scsi/elx/libefc/efc_cmds.h
29
efc_cmd_node_attach(struct efc *efc, struct efc_remote_node *rnode,
drivers/scsi/elx/libefc/efc_cmds.h
32
efc_cmd_node_alloc(struct efc *efc, struct efc_remote_node *rnode, u32 fc_addr,
drivers/scsi/elx/libefc/efc_device.c
1296
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_device.c
1307
efc_log_info(efc,
drivers/scsi/elx/libefc/efc_device.c
1312
efc->tt.scsi_new_node(efc, node);
drivers/scsi/elx/libefc/efc_device.c
1388
efc_log_err(efc, "Unexpected event:%s\n",
drivers/scsi/elx/libefc/efc_device.c
1428
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_device.c
1442
efc_log_info(efc, "[%s] missing (%s) WWPN %s WWNN %s\n",
drivers/scsi/elx/libefc/efc_device.c
1451
rc = efc->tt.scsi_del_node(efc, node,
drivers/scsi/elx/libefc/efc_device.c
1458
rc = efc->tt.scsi_del_node(efc, node,
drivers/scsi/elx/libefc/efc_device.c
1463
rc = efc->tt.scsi_del_node(efc, node,
drivers/scsi/elx/libefc/efc_device.c
1468
rc = efc->tt.scsi_del_node(efc, node,
drivers/scsi/elx/libefc/efc_device.c
1473
rc = efc->tt.scsi_del_node(efc, node,
drivers/scsi/elx/libefc/efc_device.c
1475
rc_2 = efc->tt.scsi_del_node(efc, node,
drivers/scsi/elx/libefc/efc_device.c
19
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_device.c
202
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_device.c
217
efc_log_info(node->efc,
drivers/scsi/elx/libefc/efc_device.c
225
rc = efc->tt.scsi_del_node(efc, node,
drivers/scsi/elx/libefc/efc_device.c
233
efc_log_info(node->efc,
drivers/scsi/elx/libefc/efc_device.c
241
rc = efc->tt.scsi_del_node(efc, node,
drivers/scsi/elx/libefc/efc_device.c
249
efc_log_info(node->efc,
drivers/scsi/elx/libefc/efc_device.c
255
rc = efc->tt.scsi_del_node(efc, node,
drivers/scsi/elx/libefc/efc_device.c
264
rc = efc->tt.scsi_del_node(efc, node,
drivers/scsi/elx/libefc/efc_device.c
285
rc = efc_cmd_node_detach(efc, &node->rnode);
drivers/scsi/elx/libefc/efc_device.c
30
efc_log_info(efc, "[%s] found(initiator) WWPN:%s WWNN:%s\n",
drivers/scsi/elx/libefc/efc_device.c
33
rc = efc->tt.scsi_new_node(efc, node);
drivers/scsi/elx/libefc/efc_device.c
453
if ((node->efc->nodedb_mask & EFC_NODEDB_PAUSE_NEW_NODES) &&
drivers/scsi/elx/libefc/efc_device.c
48
struct efc *efc = NULL;
drivers/scsi/elx/libefc/efc_device.c
51
efc = node->efc;
drivers/scsi/elx/libefc/efc_device.c
56
efc_log_debug(efc, "[%s] %-20s %-20s\n", node->display_name,
drivers/scsi/elx/libefc/efc_device.c
62
efc_log_debug(efc, "[%s] %-20s %-20s\n",
drivers/scsi/elx/libefc/efc_device.c
69
efc_log_debug(efc, "[%s] %-20s %-20s\n", node->display_name,
drivers/scsi/elx/libefc/efc_domain.c
1018
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_domain.c
1028
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_domain.c
1058
efc_log_err(efc, "Received ABTS:\n");
drivers/scsi/elx/libefc/efc_domain.c
107
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_domain.c
1070
efc_log_err(efc, "Recvd FCP CMD. Drop IO\n");
drivers/scsi/elx/libefc/efc_domain.c
1086
efc_log_err(efc, "Unhandled frame rctl: %02x\n", hdr->fh_r_ctl);
drivers/scsi/elx/libefc/efc_domain.c
109
if (efc->domain_free_cb)
drivers/scsi/elx/libefc/efc_domain.c
110
(*efc->domain_free_cb)(efc, efc->domain_free_cb_arg);
drivers/scsi/elx/libefc/efc_domain.c
118
struct efc *efc;
drivers/scsi/elx/libefc/efc_domain.c
120
efc = domain->efc;
drivers/scsi/elx/libefc/efc_domain.c
123
efc->hold_frames = false;
drivers/scsi/elx/libefc/efc_domain.c
125
efc_log_debug(efc, "Domain free: wwn %016llX\n", domain->fcf_wwn);
drivers/scsi/elx/libefc/efc_domain.c
128
efc->domain = NULL;
drivers/scsi/elx/libefc/efc_domain.c
133
efc_domain_alloc(struct efc *efc, uint64_t fcf_wwn)
drivers/scsi/elx/libefc/efc_domain.c
141
domain->efc = efc;
drivers/scsi/elx/libefc/efc_domain.c
151
efc->domain = domain;
drivers/scsi/elx/libefc/efc_domain.c
153
efc_log_debug(efc, "Domain allocated: wwn %016llX\n", domain->fcf_wwn);
drivers/scsi/elx/libefc/efc_domain.c
159
efc_register_domain_free_cb(struct efc *efc,
drivers/scsi/elx/libefc/efc_domain.c
16
struct efc *efc = arg;
drivers/scsi/elx/libefc/efc_domain.c
160
void (*callback)(struct efc *efc, void *arg),
drivers/scsi/elx/libefc/efc_domain.c
164
efc->domain_free_cb = callback;
drivers/scsi/elx/libefc/efc_domain.c
165
efc->domain_free_cb_arg = arg;
drivers/scsi/elx/libefc/efc_domain.c
166
if (!efc->domain && callback)
drivers/scsi/elx/libefc/efc_domain.c
167
(*callback)(efc, arg);
drivers/scsi/elx/libefc/efc_domain.c
187
efc_log_warn(domain->efc, "%-20s %-20s not handled\n",
drivers/scsi/elx/libefc/efc_domain.c
215
efc_log_warn(domain->efc, "%-20s %-20s not handled\n",
drivers/scsi/elx/libefc/efc_domain.c
222
struct efc *efc = NULL;\
drivers/scsi/elx/libefc/efc_domain.c
226
WARN_ON(!domain->efc);\
drivers/scsi/elx/libefc/efc_domain.c
227
efc = domain->efc
drivers/scsi/elx/libefc/efc_domain.c
247
u64 my_wwnn = efc->req_wwnn;
drivers/scsi/elx/libefc/efc_domain.c
248
u64 my_wwpn = efc->req_wwpn;
drivers/scsi/elx/libefc/efc_domain.c
25
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_domain.c
252
efc_log_debug(efc, "using default hardware WWN config\n");
drivers/scsi/elx/libefc/efc_domain.c
253
my_wwpn = efc->def_wwpn;
drivers/scsi/elx/libefc/efc_domain.c
254
my_wwnn = efc->def_wwnn;
drivers/scsi/elx/libefc/efc_domain.c
257
efc_log_debug(efc, "Create nport WWPN %016llX WWNN %016llX\n",
drivers/scsi/elx/libefc/efc_domain.c
262
efc->enable_ini, efc->enable_tgt);
drivers/scsi/elx/libefc/efc_domain.c
265
efc_log_err(efc, "efc_nport_alloc() failed\n");
drivers/scsi/elx/libefc/efc_domain.c
275
if (efc_cmd_nport_alloc(efc, nport, NULL, (uint8_t *)&bewwpn)) {
drivers/scsi/elx/libefc/efc_domain.c
276
efc_log_err(efc, "Can't allocate port\n");
drivers/scsi/elx/libefc/efc_domain.c
295
if (efc_cmd_domain_alloc(efc, domain, drec->index)) {
drivers/scsi/elx/libefc/efc_domain.c
296
efc_log_err(efc,
drivers/scsi/elx/libefc/efc_domain.c
304
efc_log_debug(efc, "%s fc_id=%#x speed=%d\n",
drivers/scsi/elx/libefc/efc_domain.c
315
if (efc->enable_ini) {
drivers/scsi/elx/libefc/efc_domain.c
318
efc_log_debug(efc, "%d position map entries\n",
drivers/scsi/elx/libefc/efc_domain.c
324
efc_log_debug(efc, "%#x -> %#x\n",
drivers/scsi/elx/libefc/efc_domain.c
331
efc_log_err(efc,
drivers/scsi/elx/libefc/efc_domain.c
34
efc_log_debug(efc, "Domain found: wwn %016llX\n", fcf_wwn);
drivers/scsi/elx/libefc/efc_domain.c
343
if (efc_cmd_domain_alloc(efc, domain, drec->index)) {
drivers/scsi/elx/libefc/efc_domain.c
344
efc_log_err(efc,
drivers/scsi/elx/libefc/efc_domain.c
37
domain = efc->domain;
drivers/scsi/elx/libefc/efc_domain.c
39
domain = efc_domain_alloc(efc, fcf_wwn);
drivers/scsi/elx/libefc/efc_domain.c
41
efc_log_err(efc, "efc_domain_alloc() failed\n");
drivers/scsi/elx/libefc/efc_domain.c
414
efc_log_err(efc,
drivers/scsi/elx/libefc/efc_domain.c
421
efc_log_err(efc,
drivers/scsi/elx/libefc/efc_domain.c
436
efc_log_err(efc, "%s recv'd waiting for DOMAIN_ALLOC_OK;",
drivers/scsi/elx/libefc/efc_domain.c
438
efc_log_err(efc, "shutting down domain\n");
drivers/scsi/elx/libefc/efc_domain.c
447
efc_log_debug(efc,
drivers/scsi/elx/libefc/efc_domain.c
475
efc_log_debug(efc, "Requesting hw domain attach fc_id x%x\n",
drivers/scsi/elx/libefc/efc_domain.c
481
efc_log_err(efc, "Sport lookup store failed: %d\n", rc);
drivers/scsi/elx/libefc/efc_domain.c
490
rc = efc_cmd_domain_attach(efc, domain, fc_id);
drivers/scsi/elx/libefc/efc_domain.c
492
efc_log_err(efc, "efc_hw_domain_attach failed: %d\n",
drivers/scsi/elx/libefc/efc_domain.c
503
efc_log_err(efc, "%s: evt: %d should not happen\n",
drivers/scsi/elx/libefc/efc_domain.c
508
efc_log_debug(efc,
drivers/scsi/elx/libefc/efc_domain.c
531
if (efc_cmd_domain_free(efc, domain))
drivers/scsi/elx/libefc/efc_domain.c
532
efc_log_err(efc, "hw_domain_free failed\n");
drivers/scsi/elx/libefc/efc_domain.c
54
efc->hold_frames = true;
drivers/scsi/elx/libefc/efc_domain.c
592
efc_log_debug(efc,
drivers/scsi/elx/libefc/efc_domain.c
599
efc_log_err(efc, "%s: evt: %d should not happen\n",
drivers/scsi/elx/libefc/efc_domain.c
635
efc_log_debug(domain->efc,
drivers/scsi/elx/libefc/efc_domain.c
660
if (efc_cmd_domain_free(efc, domain))
drivers/scsi/elx/libefc/efc_domain.c
661
efc_log_err(efc, "hw_domain_free failed\n");
drivers/scsi/elx/libefc/efc_domain.c
668
efc_log_err(efc, "%s: evt: %d should not happen\n",
drivers/scsi/elx/libefc/efc_domain.c
711
rc = efc_cmd_domain_free(efc, domain);
drivers/scsi/elx/libefc/efc_domain.c
713
efc_log_err(efc, "efc_hw_domain_free() failed: %d\n",
drivers/scsi/elx/libefc/efc_domain.c
745
efc_log_debug(efc, "Reallocating domain\n");
drivers/scsi/elx/libefc/efc_domain.c
747
domain = efc_domain_alloc(efc, fcf_wwn);
drivers/scsi/elx/libefc/efc_domain.c
750
efc_log_err(efc,
drivers/scsi/elx/libefc/efc_domain.c
807
if (efc_cmd_domain_free(efc, domain))
drivers/scsi/elx/libefc/efc_domain.c
808
efc_log_err(efc, "hw_domain_free() failed\n");
drivers/scsi/elx/libefc/efc_domain.c
814
efc_log_err(efc, "[domain] %-20s: failed\n",
drivers/scsi/elx/libefc/efc_domain.c
860
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_domain.c
870
if (efc->hold_frames)
drivers/scsi/elx/libefc/efc_domain.c
874
spin_lock_irqsave(&efc->pend_frames_lock, flags);
drivers/scsi/elx/libefc/efc_domain.c
876
if (!list_empty(&efc->pend_frames)) {
drivers/scsi/elx/libefc/efc_domain.c
877
seq = list_first_entry(&efc->pend_frames,
drivers/scsi/elx/libefc/efc_domain.c
883
processed = efc->pend_frames_processed;
drivers/scsi/elx/libefc/efc_domain.c
884
efc->pend_frames_processed = 0;
drivers/scsi/elx/libefc/efc_domain.c
885
spin_unlock_irqrestore(&efc->pend_frames_lock, flags);
drivers/scsi/elx/libefc/efc_domain.c
888
efc->pend_frames_processed++;
drivers/scsi/elx/libefc/efc_domain.c
890
spin_unlock_irqrestore(&efc->pend_frames_lock, flags);
drivers/scsi/elx/libefc/efc_domain.c
894
efc->tt.hw_seq_free(efc, seq);
drivers/scsi/elx/libefc/efc_domain.c
900
efc_log_debug(efc, "%u domain frames held and processed\n",
drivers/scsi/elx/libefc/efc_domain.c
905
efc_dispatch_frame(struct efc *efc, struct efc_hw_sequence *seq)
drivers/scsi/elx/libefc/efc_domain.c
907
struct efc_domain *domain = efc->domain;
drivers/scsi/elx/libefc/efc_domain.c
91
efc_log_warn(efc, "unsupported event %#x\n", event);
drivers/scsi/elx/libefc/efc_domain.c
914
if (!domain || efc->hold_frames || !list_empty(&efc->pend_frames)) {
drivers/scsi/elx/libefc/efc_domain.c
917
spin_lock_irqsave(&efc->pend_frames_lock, flags);
drivers/scsi/elx/libefc/efc_domain.c
919
list_add_tail(&seq->list_entry, &efc->pend_frames);
drivers/scsi/elx/libefc/efc_domain.c
920
spin_unlock_irqrestore(&efc->pend_frames_lock, flags);
drivers/scsi/elx/libefc/efc_domain.c
93
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_domain.c
933
efc->tt.hw_seq_free(efc, seq);
drivers/scsi/elx/libefc/efc_domain.c
941
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_domain.c
949
efc_log_err(efc, "Sequence header or payload is null\n");
drivers/scsi/elx/libefc/efc_domain.c
95
if (efc->domain && domain->req_accept_frames) {
drivers/scsi/elx/libefc/efc_domain.c
959
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_domain.c
965
efc_log_warn(efc, "FCP frame with invalid d_id x%x\n",
drivers/scsi/elx/libefc/efc_domain.c
97
efc->hold_frames = false;
drivers/scsi/elx/libefc/efc_domain.c
973
efc_log_err(efc, "Physical nport is NULL\n");
drivers/scsi/elx/libefc/efc_domain.c
989
efc_log_debug(efc, "sol data/ctrl frame without node\n");
drivers/scsi/elx/libefc/efc_domain.c
995
efc_log_err(efc, "efc_node_alloc() failed\n");
drivers/scsi/elx/libefc/efc_domain.h
15
efc_domain_alloc(struct efc *efc, uint64_t fcf_wwn);
drivers/scsi/elx/libefc/efc_els.c
1027
efc_send_ct_rsp(struct efc *efc, struct efc_node *node, u16 ox_id,
drivers/scsi/elx/libefc/efc_els.c
1036
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
1066
if (efc->tt.send_els(efc, &els->io)) {
drivers/scsi/elx/libefc/efc_els.c
1078
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
1093
return efc->tt.send_bls(efc, FC_RCTL_BA_ACC, &bls);
drivers/scsi/elx/libefc/efc_els.c
111
struct efc *efc;
drivers/scsi/elx/libefc/efc_els.c
117
efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
133
dma_free_coherent(&efc->pci->dev, els->io.rsp.size,
drivers/scsi/elx/libefc/efc_els.c
135
dma_free_coherent(&efc->pci->dev, els->io.req.size,
drivers/scsi/elx/libefc/efc_els.c
138
mempool_free(els, efc->els_io_pool);
drivers/scsi/elx/libefc/efc_els.c
141
efc_scsi_io_list_empty(node->efc, node);
drivers/scsi/elx/libefc/efc_els.c
15
#define EFC_LOG_ENABLE_ELS_TRACE(efc) \
drivers/scsi/elx/libefc/efc_els.c
16
(((efc) != NULL) ? (((efc)->logmask & (1U << 1)) != 0) : 0)
drivers/scsi/elx/libefc/efc_els.c
161
struct efc *efc;
drivers/scsi/elx/libefc/efc_els.c
167
efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
188
efc_log_warn(efc,
drivers/scsi/elx/libefc/efc_els.c
20
if (EFC_LOG_ENABLE_ELS_TRACE(efc)) \
drivers/scsi/elx/libefc/efc_els.c
21
efc_log_info(efc, "[%s] %-20s\n", \
drivers/scsi/elx/libefc/efc_els.c
228
efc_log_err(efc, "LOCAL_REJECT with ext status:%x\n",
drivers/scsi/elx/libefc/efc_els.c
236
efc_log_warn(efc, "els req failed status x%x, ext_status x%x\n",
drivers/scsi/elx/libefc/efc_els.c
26
efc_log_err((struct efc *)els->node->efc,\
drivers/scsi/elx/libefc/efc_els.c
260
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
280
rc = efc->tt.send_els(efc, &els->io);
drivers/scsi/elx/libefc/efc_els.c
287
efc_log_err(efc, "efc_els_send failed: %d\n", rc);
drivers/scsi/elx/libefc/efc_els.c
296
struct efc *efc;
drivers/scsi/elx/libefc/efc_els.c
300
efc = els->node->efc;
drivers/scsi/elx/libefc/efc_els.c
307
rc = efc->tt.send_els(efc, &els->io);
drivers/scsi/elx/libefc/efc_els.c
313
efc_log_err(efc, "ELS retries exhausted\n");
drivers/scsi/elx/libefc/efc_els.c
323
struct efc *efc;
drivers/scsi/elx/libefc/efc_els.c
328
efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
342
efc_log_warn(efc, "[%s] %-8s failed status x%x, ext x%x\n",
drivers/scsi/elx/libefc/efc_els.c
358
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
380
rc = efc->tt.send_els(efc, &els->io);
drivers/scsi/elx/libefc/efc_els.c
396
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
403
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
423
struct efc *efc;
drivers/scsi/elx/libefc/efc_els.c
426
efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
43
struct efc *efc;
drivers/scsi/elx/libefc/efc_els.c
432
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
452
struct efc *efc;
drivers/scsi/elx/libefc/efc_els.c
455
efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
461
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
47
efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
480
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
491
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
50
efc_log_err(efc, "els io alloc disabled\n");
drivers/scsi/elx/libefc/efc_els.c
520
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
531
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
54
els = mempool_alloc(efc->els_io_pool, GFP_ATOMIC);
drivers/scsi/elx/libefc/efc_els.c
552
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
56
atomic_add_return(1, &efc->els_io_alloc_failed_count);
drivers/scsi/elx/libefc/efc_els.c
564
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
588
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
595
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
614
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
620
efc_log_err(efc, "els IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
644
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
653
efc_log_err(efc, "els IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
679
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
687
efc_log_err(efc, "els IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
69
els->io.req.virt = dma_alloc_coherent(&efc->pci->dev, els->io.req.size,
drivers/scsi/elx/libefc/efc_els.c
712
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
72
mempool_free(els, efc->els_io_pool);
drivers/scsi/elx/libefc/efc_els.c
723
efc_log_err(efc, "els IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
754
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
765
efc_log_err(efc, "els IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
77
els->io.rsp.virt = dma_alloc_coherent(&efc->pci->dev, els->io.rsp.size,
drivers/scsi/elx/libefc/efc_els.c
790
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
798
efc_log_err(efc, "els IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
80
dma_free_coherent(&efc->pci->dev, els->io.req.size,
drivers/scsi/elx/libefc/efc_els.c
819
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
82
mempool_free(els, efc->els_io_pool);
drivers/scsi/elx/libefc/efc_els.c
826
efc_log_err(efc, "els IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
846
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
855
efc_log_err(efc, "els IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
894
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
905
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
931
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
942
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.c
972
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_els.c
982
efc_log_err(efc, "IO alloc failed\n");
drivers/scsi/elx/libefc/efc_els.h
100
efc_send_ct_rsp(struct efc *efc, struct efc_node *node, u16 ox_id,
drivers/scsi/elx/libefc/efc_els.h
90
efc_bls_send_acc_hdr(struct efc *efc, struct efc_node *node,
drivers/scsi/elx/libefc/efc_fabric.c
1004
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_fabric.c
1013
efc_log_warn(efc, "can't find name server node\n");
drivers/scsi/elx/libefc/efc_fabric.c
1102
efc_log_debug(nport->efc, "r: %llx\n",
drivers/scsi/elx/libefc/efc_fabric.c
1104
efc_log_debug(nport->efc, "l: %llx\n", local_wwpn);
drivers/scsi/elx/libefc/efc_fabric.c
1107
efc_log_warn(nport->efc,
drivers/scsi/elx/libefc/efc_fabric.c
1122
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_fabric.c
1168
efc_log_err(efc, "node alloc failed\n");
drivers/scsi/elx/libefc/efc_fabric.c
1357
if (node->efc->external_loopback) {
drivers/scsi/elx/libefc/efc_fabric.c
1529
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_fabric.c
1545
if (nport->efc->external_loopback) {
drivers/scsi/elx/libefc/efc_fabric.c
1551
efc_log_debug(efc,
drivers/scsi/elx/libefc/efc_fabric.c
1557
efc_log_warn(efc,
drivers/scsi/elx/libefc/efc_fabric.c
26
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_fabric.c
294
efc_log_err(node->efc, "FDISC failed, shutting down nport\n");
drivers/scsi/elx/libefc/efc_fabric.c
323
if (ns->efc->nodedb_mask & EFC_NODEDB_PAUSE_NAMESERVER)
drivers/scsi/elx/libefc/efc_fabric.c
37
rc = efc_cmd_node_detach(efc, &node->rnode);
drivers/scsi/elx/libefc/efc_fabric.c
653
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_fabric.c
670
efc_log_debug(node->efc, "residual is %u words\n", residual);
drivers/scsi/elx/libefc/efc_fabric.c
737
(node->nport->enable_tgt && enable_target_rscn(efc))) {
drivers/scsi/elx/libefc/efc_fabric.c
765
efc_log_err(efc, "efc_node_alloc() failed\n");
drivers/scsi/elx/libefc/efc_fabric.c
77
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_fabric.c
841
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_fabric.c
85
efc_log_debug(efc, ">>> reenter !!\n");
drivers/scsi/elx/libefc/efc_fabric.c
869
if (efc->tgt_rscn_delay_msec != 0 &&
drivers/scsi/elx/libefc/efc_fabric.c
871
enable_target_rscn(efc)) {
drivers/scsi/elx/libefc/efc_fabric.c
901
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_fabric.c
916
delay_msec = efc->tgt_rscn_delay_msec;
drivers/scsi/elx/libefc/efc_fabric.c
918
if (tmp < efc->tgt_rscn_period_msec)
drivers/scsi/elx/libefc/efc_fabric.c
919
delay_msec = efc->tgt_rscn_period_msec;
drivers/scsi/elx/libefc/efc_fabric.c
937
efc_log_debug(efc,
drivers/scsi/elx/libefc/efc_node.c
1028
efc->tt.hw_seq_free(efc, seq);
drivers/scsi/elx/libefc/efc_node.c
1032
efc_log_debug(efc, "%u node frames held and processed\n",
drivers/scsi/elx/libefc/efc_node.c
1041
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_node.c
1046
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1049
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1053
efc_scsi_del_initiator_complete(struct efc *efc, struct efc_node *node)
drivers/scsi/elx/libefc/efc_node.c
1057
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1060
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1064
efc_scsi_del_target_complete(struct efc *efc, struct efc_node *node)
drivers/scsi/elx/libefc/efc_node.c
1068
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1071
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1075
efc_scsi_io_list_empty(struct efc *efc, struct efc_node *node)
drivers/scsi/elx/libefc/efc_node.c
1079
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1081
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1086
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_node.c
1089
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1091
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1097
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_node.c
1099
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
1101
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
111
efc_node_free_resources(efc, &node->rnode);
drivers/scsi/elx/libefc/efc_node.c
113
dma_pool_free(efc->node_dma_pool, dma->virt, dma->phys);
drivers/scsi/elx/libefc/efc_node.c
115
mempool_free(node, efc->node_pool);
drivers/scsi/elx/libefc/efc_node.c
12
struct efc *efc = arg;
drivers/scsi/elx/libefc/efc_node.c
123
struct efc *efc;
drivers/scsi/elx/libefc/efc_node.c
128
efc = node->efc;
drivers/scsi/elx/libefc/efc_node.c
141
efc_log_err(efc, "Node already Freed\n");
drivers/scsi/elx/libefc/efc_node.c
146
rc = efc_node_free_resources(efc, &node->rnode);
drivers/scsi/elx/libefc/efc_node.c
148
efc_log_err(efc, "efc_hw_node_free failed: %d\n", rc);
drivers/scsi/elx/libefc/efc_node.c
17
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
19
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_node.c
197
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_node.c
200
efc_log_err(efc, "Warning: unattached domain\n");
drivers/scsi/elx/libefc/efc_node.c
214
rc = efc_cmd_node_attach(efc, &node->rnode, &node->sparm_dma_buf);
drivers/scsi/elx/libefc/efc_node.c
216
efc_log_debug(efc, "efc_hw_node_attach failed: %d\n", rc);
drivers/scsi/elx/libefc/efc_node.c
262
efc_log_debug(node->efc, "[%s] cleaning up LS_ACC oxid=0x%x\n",
drivers/scsi/elx/libefc/efc_node.c
348
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_node.c
35
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_node.c
356
efc->tt.hw_seq_free(efc, frame);
drivers/scsi/elx/libefc/efc_node.c
39
dma_pool_free(efc->node_dma_pool, dma->virt, dma->phys);
drivers/scsi/elx/libefc/efc_node.c
41
mempool_free(node, efc->node_pool);
drivers/scsi/elx/libefc/efc_node.c
49
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_node.c
53
efc_log_debug(efc, "node allocation when shutting down %06x",
drivers/scsi/elx/libefc/efc_node.c
58
node = mempool_alloc(efc->node_pool, GFP_ATOMIC);
drivers/scsi/elx/libefc/efc_node.c
592
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_node.c
60
efc_log_err(efc, "node allocation failed %06x", port_id);
drivers/scsi/elx/libefc/efc_node.c
633
efc_log_debug(efc, "[%s] %-20s\n", node->display_name,
drivers/scsi/elx/libefc/efc_node.c
649
struct efc *efc = NULL;
drivers/scsi/elx/libefc/efc_node.c
653
efc = node->efc;
drivers/scsi/elx/libefc/efc_node.c
67
dma->virt = dma_pool_zalloc(efc->node_dma_pool, GFP_ATOMIC, &dma->phys);
drivers/scsi/elx/libefc/efc_node.c
69
efc_log_err(efc, "node dma alloc failed\n");
drivers/scsi/elx/libefc/efc_node.c
714
efc_log_debug(efc,
drivers/scsi/elx/libefc/efc_node.c
737
efc_log_debug(efc, "[%s] (%s) %s sending ELS_RJT\n",
drivers/scsi/elx/libefc/efc_node.c
746
efc_log_debug(efc, "[%s] (%s) %s sending BA_ACC\n",
drivers/scsi/elx/libefc/efc_node.c
75
node->efc = efc;
drivers/scsi/elx/libefc/efc_node.c
756
efc_log_debug(node->efc, "[%s] %-20s %-20s not handled\n",
drivers/scsi/elx/libefc/efc_node.c
85
rc = efc_cmd_node_alloc(efc, &node->rnode, port_id, nport);
drivers/scsi/elx/libefc/efc_node.c
87
efc_log_err(efc, "efc_hw_node_alloc failed: %d\n", rc);
drivers/scsi/elx/libefc/efc_node.c
971
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_node.c
974
efc_log_err(efc, "[%s] Received cmd :%x sending CT_REJECT\n",
drivers/scsi/elx/libefc/efc_node.c
976
efc_send_ct_rsp(efc, node, be16_to_cpu(hdr->fh_ox_id), iu,
drivers/scsi/elx/libefc/efc_node.c
99
efc_log_err(efc, "Node lookup store failed: %d\n", rc);
drivers/scsi/elx/libefc/efc_node.c
995
struct efc *efc = node->efc;
drivers/scsi/elx/libefc/efc_node.h
127
efc_node_free(struct efc_node *efc);
drivers/scsi/elx/libefc/efc_node.h
18
efc_log_debug(io->efc, "[%s] [%04x][i:%04x t:%04x h:%04x]" fmt, \
drivers/scsi/elx/libefc/efc_nport.c
102
(nport->enable_tgt && enable_target_rscn(nport->efc)));
drivers/scsi/elx/libefc/efc_nport.c
129
efc_log_debug(domain->efc, "New Nport [%s]\n", nport->display_name);
drivers/scsi/elx/libefc/efc_nport.c
143
efc_log_debug(domain->efc, "[%s] free nport\n", nport->display_name);
drivers/scsi/elx/libefc/efc_nport.c
181
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_nport.c
187
efc_log_err(efc, "Sport lookup store failed: %d\n", rc);
drivers/scsi/elx/libefc/efc_nport.c
199
efc_log_debug(nport->efc, "[%s] attach nport: fc_id x%06x\n",
drivers/scsi/elx/libefc/efc_nport.c
203
rc = efc_cmd_nport_attach(efc, nport, fc_id);
drivers/scsi/elx/libefc/efc_nport.c
205
efc_log_err(nport->efc,
drivers/scsi/elx/libefc/efc_nport.c
215
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_nport.c
231
if (efc->link_status == EFC_LINK_STATUS_DOWN) {
drivers/scsi/elx/libefc/efc_nport.c
236
efc_log_debug(efc, "[%s] nport shutdown vport, send logo\n",
drivers/scsi/elx/libefc/efc_nport.c
257
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_nport.c
261
list_for_each_entry(vport, &efc->vport_list, list_entry) {
drivers/scsi/elx/libefc/efc_nport.c
276
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_nport.c
299
if (efc_cmd_nport_free(efc, nport)) {
drivers/scsi/elx/libefc/efc_nport.c
300
efc_log_debug(nport->efc,
drivers/scsi/elx/libefc/efc_nport.c
313
efc_log_debug(nport->efc, "[%s] %-20s %-20s not handled\n",
drivers/scsi/elx/libefc/efc_nport.c
33
struct efc *efc = arg;
drivers/scsi/elx/libefc/efc_nport.c
348
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_nport.c
357
efc_log_debug(efc, "vport: letting f/w select WWN\n");
drivers/scsi/elx/libefc/efc_nport.c
360
efc_log_debug(efc, "vport: hard coding port id: %x\n",
drivers/scsi/elx/libefc/efc_nport.c
366
if (efc_cmd_nport_alloc(efc, nport, nport->domain,
drivers/scsi/elx/libefc/efc_nport.c
369
efc_log_err(efc, "Can't allocate port\n");
drivers/scsi/elx/libefc/efc_nport.c
37
efc_log_debug(efc, "nport event: %s\n", efc_sm_event_name(event));
drivers/scsi/elx/libefc/efc_nport.c
385
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_nport.c
39
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
41
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
419
efc_log_err(efc, "efc_node_alloc() failed\n");
drivers/scsi/elx/libefc/efc_nport.c
442
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_nport.c
459
efc_log_debug(efc, "can't find node %06x\n", FC_FID_FLOGI);
drivers/scsi/elx/libefc/efc_nport.c
475
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_nport.c
479
spin_lock_irqsave(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
480
list_for_each_entry(vport, &efc->vport_list, list_entry) {
drivers/scsi/elx/libefc/efc_nport.c
489
spin_unlock_irqrestore(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
497
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_nport.c
506
efc_log_debug(efc,
drivers/scsi/elx/libefc/efc_nport.c
514
efc->tt.new_nport(efc, nport);
drivers/scsi/elx/libefc/efc_nport.c
526
efc_log_debug(efc,
drivers/scsi/elx/libefc/efc_nport.c
531
efc->tt.del_nport(efc, nport);
drivers/scsi/elx/libefc/efc_nport.c
544
struct efc *efc = nport->efc;
drivers/scsi/elx/libefc/efc_nport.c
563
if (efc_cmd_nport_free(efc, nport)) {
drivers/scsi/elx/libefc/efc_nport.c
564
efc_log_err(nport->efc, "efc_hw_port_free failed\n");
drivers/scsi/elx/libefc/efc_nport.c
602
lockdep_assert_held(&domain->efc->lock);
drivers/scsi/elx/libefc/efc_nport.c
623
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_nport.c
630
spin_lock_irqsave(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
631
list_for_each_entry_safe(vport, next, &efc->vport_list, list_entry) {
drivers/scsi/elx/libefc/efc_nport.c
637
spin_unlock_irqrestore(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
647
struct efc *efc = domain->efc;
drivers/scsi/elx/libefc/efc_nport.c
652
if (ini && domain->efc->enable_ini == 0) {
drivers/scsi/elx/libefc/efc_nport.c
653
efc_log_debug(efc, "driver initiator mode not enabled\n");
drivers/scsi/elx/libefc/efc_nport.c
657
if (tgt && domain->efc->enable_tgt == 0) {
drivers/scsi/elx/libefc/efc_nport.c
658
efc_log_debug(efc, "driver target mode not enabled\n");
drivers/scsi/elx/libefc/efc_nport.c
666
vport = efc_vport_create_spec(domain->efc, wwnn, wwpn, fc_id, ini, tgt,
drivers/scsi/elx/libefc/efc_nport.c
669
efc_log_err(efc, "failed to create vport object entry\n");
drivers/scsi/elx/libefc/efc_nport.c
673
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
675
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
681
efc_nport_vport_del(struct efc *efc, struct efc_domain *domain,
drivers/scsi/elx/libefc/efc_nport.c
689
spin_lock_irqsave(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
691
list_for_each_entry_safe(vport, next, &efc->vport_list, list_entry) {
drivers/scsi/elx/libefc/efc_nport.c
698
spin_unlock_irqrestore(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
705
spin_lock_irqsave(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
71
if (domain->efc->enable_ini)
drivers/scsi/elx/libefc/efc_nport.c
715
spin_unlock_irqrestore(&efc->lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
720
efc_vport_del_all(struct efc *efc)
drivers/scsi/elx/libefc/efc_nport.c
726
spin_lock_irqsave(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
727
list_for_each_entry_safe(vport, next, &efc->vport_list, list_entry) {
drivers/scsi/elx/libefc/efc_nport.c
731
spin_unlock_irqrestore(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
735
efc_vport_create_spec(struct efc *efc, uint64_t wwnn, uint64_t wwpn,
drivers/scsi/elx/libefc/efc_nport.c
747
spin_lock_irqsave(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
748
list_for_each_entry(vport, &efc->vport_list, list_entry) {
drivers/scsi/elx/libefc/efc_nport.c
751
efc_log_err(efc,
drivers/scsi/elx/libefc/efc_nport.c
754
spin_unlock_irqrestore(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
761
spin_unlock_irqrestore(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
774
list_add_tail(&vport->list_entry, &efc->vport_list);
drivers/scsi/elx/libefc/efc_nport.c
775
spin_unlock_irqrestore(&efc->vport_lock, flags);
drivers/scsi/elx/libefc/efc_nport.c
78
efc_log_err(domain->efc,
drivers/scsi/elx/libefc/efc_nport.c
93
nport->efc = domain->efc;
drivers/scsi/elx/libefc/efclib.c
23
int efcport_init(struct efc *efc)
drivers/scsi/elx/libefc/efclib.c
27
spin_lock_init(&efc->lock);
drivers/scsi/elx/libefc/efclib.c
28
INIT_LIST_HEAD(&efc->vport_list);
drivers/scsi/elx/libefc/efclib.c
29
efc->hold_frames = false;
drivers/scsi/elx/libefc/efclib.c
30
spin_lock_init(&efc->pend_frames_lock);
drivers/scsi/elx/libefc/efclib.c
31
INIT_LIST_HEAD(&efc->pend_frames);
drivers/scsi/elx/libefc/efclib.c
34
efc->node_pool = mempool_create_kmalloc_pool(EFC_MAX_REMOTE_NODES,
drivers/scsi/elx/libefc/efclib.c
36
if (!efc->node_pool) {
drivers/scsi/elx/libefc/efclib.c
37
efc_log_err(efc, "Can't allocate node pool\n");
drivers/scsi/elx/libefc/efclib.c
41
efc->node_dma_pool = dma_pool_create("node_dma_pool", &efc->pci->dev,
drivers/scsi/elx/libefc/efclib.c
43
if (!efc->node_dma_pool) {
drivers/scsi/elx/libefc/efclib.c
44
efc_log_err(efc, "Can't allocate node dma pool\n");
drivers/scsi/elx/libefc/efclib.c
45
mempool_destroy(efc->node_pool);
drivers/scsi/elx/libefc/efclib.c
49
efc->els_io_pool = mempool_create_kmalloc_pool(EFC_ELS_IO_POOL_SZ,
drivers/scsi/elx/libefc/efclib.c
51
if (!efc->els_io_pool) {
drivers/scsi/elx/libefc/efclib.c
52
efc_log_err(efc, "Can't allocate els io pool\n");
drivers/scsi/elx/libefc/efclib.c
60
efc_purge_pending(struct efc *efc)
drivers/scsi/elx/libefc/efclib.c
65
spin_lock_irqsave(&efc->pend_frames_lock, flags);
drivers/scsi/elx/libefc/efclib.c
67
list_for_each_entry_safe(frame, next, &efc->pend_frames, list_entry) {
drivers/scsi/elx/libefc/efclib.c
69
efc->tt.hw_seq_free(efc, frame);
drivers/scsi/elx/libefc/efclib.c
72
spin_unlock_irqrestore(&efc->pend_frames_lock, flags);
drivers/scsi/elx/libefc/efclib.c
75
void efcport_destroy(struct efc *efc)
drivers/scsi/elx/libefc/efclib.c
77
efc_purge_pending(efc);
drivers/scsi/elx/libefc/efclib.c
78
mempool_destroy(efc->els_io_pool);
drivers/scsi/elx/libefc/efclib.c
79
mempool_destroy(efc->node_pool);
drivers/scsi/elx/libefc/efclib.c
80
dma_pool_destroy(efc->node_dma_pool);
drivers/scsi/elx/libefc/efclib.h
141
struct efc *efc;
drivers/scsi/elx/libefc/efclib.h
211
struct efc *efc;
drivers/scsi/elx/libefc/efclib.h
321
struct efc *efc;
drivers/scsi/elx/libefc/efclib.h
405
efc_log_info(node->efc, "[%s] " fmt, node->display_name, ##args)
drivers/scsi/elx/libefc/efclib.h
44
#define enable_target_rscn(efc) 1
drivers/scsi/elx/libefc/efclib.h
490
int (*new_nport)(struct efc *efc, struct efc_nport *sp);
drivers/scsi/elx/libefc/efclib.h
491
void (*del_nport)(struct efc *efc, struct efc_nport *sp);
drivers/scsi/elx/libefc/efclib.h
494
int (*scsi_new_node)(struct efc *efc, struct efc_node *n);
drivers/scsi/elx/libefc/efclib.h
495
int (*scsi_del_node)(struct efc *efc, struct efc_node *n, int reason);
drivers/scsi/elx/libefc/efclib.h
499
int (*send_els)(struct efc *efc, struct efc_disc_io *io);
drivers/scsi/elx/libefc/efclib.h
501
int (*send_bls)(struct efc *efc, u32 type, struct sli_bls_params *bls);
drivers/scsi/elx/libefc/efclib.h
503
int (*hw_seq_free)(struct efc *efc, struct efc_hw_sequence *seq);
drivers/scsi/elx/libefc/efclib.h
548
void (*domain_free_cb)(struct efc *efc, void *arg);
drivers/scsi/elx/libefc/efclib.h
573
int efcport_init(struct efc *efc);
drivers/scsi/elx/libefc/efclib.h
574
void efcport_destroy(struct efc *efc);
drivers/scsi/elx/libefc/efclib.h
580
efc_register_domain_free_cb(struct efc *efc,
drivers/scsi/elx/libefc/efclib.h
581
void (*callback)(struct efc *efc, void *arg),
drivers/scsi/elx/libefc/efclib.h
589
efc_vport_create_spec(struct efc *efc, u64 wwnn, u64 wwpn, u32 fc_id,
drivers/scsi/elx/libefc/efclib.h
595
int efc_nport_vport_del(struct efc *efc, struct efc_domain *domain,
drivers/scsi/elx/libefc/efclib.h
598
void efc_vport_del_all(struct efc *efc);
drivers/scsi/elx/libefc/efclib.h
611
void efc_dispatch_frame(struct efc *efc, struct efc_hw_sequence *seq);
drivers/scsi/elx/libefc/efclib.h
619
void efc_scsi_del_initiator_complete(struct efc *efc, struct efc_node *node);
drivers/scsi/elx/libefc/efclib.h
620
void efc_scsi_del_target_complete(struct efc *efc, struct efc_node *node);
drivers/scsi/elx/libefc/efclib.h
621
void efc_scsi_io_list_empty(struct efc *efc, struct efc_node *node);