Lines Matching full:nvme
54 /* NVME initiator-based functions */
108 * NVME qidx == 0 is the admin queue, so both admin queue in lpfc_nvme_create_queue()
179 * @remoteport: Pointer to an nvme transport remoteport instance.
181 * This is a template downcall. NVME transport calls this function
213 * transport. Remove the ndlp reference for the NVME transport before in lpfc_nvme_remoteport_delete()
231 * NVME and SCSI rport unregister requests are complete. in lpfc_nvme_remoteport_delete()
241 * lpfc_nvme_handle_lsreq - Process an unsolicited NVME LS request
243 * @axchg: pointer to exchange context for the NVME LS request
245 * This routine is used for processing an asynchronously received NVME LS
247 * to the nvme-fc transport via nvme_fc_rcv_ls_req().
286 "6205 NVME Unsol rcv: sz %d rc %d: %08x %08x %08x " in lpfc_nvme_handle_lsreq()
299 * __lpfc_nvme_ls_req_cmp - Generic completion handler for a NVME
306 * This function is the generic completion handler for NVME LS requests.
502 lpfc_nvmeio_data(phba, "NVME LS XMIT: xri x%x iotag x%x to x%06x\n", in lpfc_nvme_gen_req()
529 * __lpfc_nvme_ls_req - Generic service routine to issue an NVME LS request
587 * in the nvme-fc layer. in __lpfc_nvme_ls_req()
649 * lpfc_nvme_ls_req - Issue an NVME Link Service request
655 * from the nvme_fc transport to a remote nvme-aware port.
693 * NVME LS request
790 * lpfc_nvme_ls_abort - Abort a prior NVME LS request
795 * Driver registers this routine to abort a NVME LS request that is
823 /* Fix up the existing sgls for NVME IO. */
836 * the cmd size to match NVME's 96 bytes and fix in lpfc_nvme_adj_fcp_sgls()
844 * match NVME. NVME sends 96 bytes. Also, use the in lpfc_nvme_adj_fcp_sgls()
845 * nvme commands command and response dma addresses in lpfc_nvme_adj_fcp_sgls()
855 /* Word 0-2 - NVME CMND IU (embedded payload) */ in lpfc_nvme_adj_fcp_sgls()
865 * WQE words 16-30 get the NVME CMD IU payload in lpfc_nvme_adj_fcp_sgls()
895 /* Word 0-2 - NVME CMND IU Inline BDE */ in lpfc_nvme_adj_fcp_sgls()
922 * lpfc_nvme_io_cmd_cmpl - Complete an NVME-over-FCP IO
992 lpfc_nvmeio_data(phba, "NVME FCP CMPL: xri x%x stat x%x parm x%x\n", in lpfc_nvme_io_cmd_cmpl()
1002 "6062 Ignoring NVME cmpl. No ndlp\n"); in lpfc_nvme_io_cmd_cmpl()
1013 * code is not needed in the next NVME Transport drop. in lpfc_nvme_io_cmd_cmpl()
1026 /* Now lets build the NVME ERSP IU */ in lpfc_nvme_io_cmd_cmpl()
1048 /* For NVME, the only failure path that results in an in lpfc_nvme_io_cmd_cmpl()
1057 * b. NVME ERSP in lpfc_nvme_io_cmd_cmpl()
1070 /* Get the NVME cmd details for this unique error. */ in lpfc_nvme_io_cmd_cmpl()
1080 "6084 NVME FCP_ERR ERSP: " in lpfc_nvme_io_cmd_cmpl()
1091 "6081 NVME Completion Protocol Error: " in lpfc_nvme_io_cmd_cmpl()
1108 "nvme cmd x%px, xri x%x, " in lpfc_nvme_io_cmd_cmpl()
1117 "6072 NVME Completion Error: xri %x " in lpfc_nvme_io_cmd_cmpl()
1162 /* NVME targets need completion held off until the abort exchange in lpfc_nvme_io_cmd_cmpl()
1163 * completes unless the NVME Rport is getting unregistered. in lpfc_nvme_io_cmd_cmpl()
1192 * lpfc_nvme_prep_io_cmd - Issue an NVME-over-FCP IO
1324 * lpfc_nvme_prep_io_dma - Issue an NVME-over-FCP IO
1373 "NVME Transport. Max %d, " in lpfc_nvme_prep_io_dma()
1384 * single nvme command. Just run through the seg_cnt and format in lpfc_nvme_prep_io_dma()
1499 "6063 NVME DMA Prep Err: sg_cnt %d " in lpfc_nvme_prep_io_dma()
1509 * lpfc_nvme_fcp_io_submit - Issue an NVME-over-FCP IO
1513 * @pnvme_fcreq: IO request from nvme fc to driver.
1625 /* Currently only NVME Keep alive commands should be expedited in lpfc_nvme_fcp_io_submit()
1737 * the transport. We are trusting the upper NVME layers know which in lpfc_nvme_fcp_io_submit()
1756 lpfc_nvmeio_data(phba, "NVME FCP XMIT: xri x%x idx %d to %06x\n", in lpfc_nvme_fcp_io_submit()
1810 * lpfc_nvme_abort_fcreq_cmpl - Complete an NVME FCP abort request.
1815 * This is the callback function for any NVME FCP IO that was aborted.
1839 * lpfc_nvme_fcp_abort - Issue an NVME-over-FCP ABTS
1843 * @pnvme_fcreq: IO request from nvme fc to driver.
1845 * Driver registers this routine as its nvme request io abort handler. This
1902 "6140 NVME IO req has no matching lpfc nvme " in lpfc_nvme_fcp_abort()
1907 "6141 lpfc NVME IO req has no nvme_fcreq " in lpfc_nvme_fcp_abort()
1916 "NVME Req now. hba_flag x%lx\n", in lpfc_nvme_fcp_abort()
1929 * state must match the nvme_fcreq passed by the nvme in lpfc_nvme_fcp_abort()
1931 * has already completed the NVME IO and the nvme transport in lpfc_nvme_fcp_abort()
1936 "6143 NVME req mismatch: " in lpfc_nvme_fcp_abort()
1947 "6142 NVME IO req x%px not queued - skipping " in lpfc_nvme_fcp_abort()
1954 lpfc_nvmeio_data(phba, "NVME FCP ABORT: xri x%x idx %d to %06x\n", in lpfc_nvme_fcp_abort()
1961 "6144 Outstanding NVME I/O Abort Request " in lpfc_nvme_fcp_abort()
1987 "6138 Transport Abort NVME Request Issued for " in lpfc_nvme_fcp_abort()
1998 /* Declare and initialization an instance of the FC NVME template. */
2026 * lpfc_get_nvme_buf - Get a nvme buffer from io_buf_list of the HBA
2028 * This routine removes a nvme buffer from head of @hdwq io_buf_list
2060 * from the NVME Layer to be sent. in lpfc_get_nvme_buf()
2086 * lpfc_release_nvme_buf: Return a nvme buffer back to hba nvme buf list.
2088 * @lpfc_ncmd: The nvme buffer which is being released.
2090 * This routine releases @lpfc_ncmd nvme buffer by adding it to tail of @phba
2091 * lpfc_io_buf_list list. For SLI4 XRI's are tied to the nvme buffer
2125 * lpfc_nvme_create_localport - Create/Bind an nvme localport instance.
2128 * This routine is invoked to create an nvme localport instance to bind
2138 * other values - from nvme registration upcall
2180 "NVME port num %d, localP x%px, private " in lpfc_nvme_create_localport()
2215 * The driver has to wait for the host nvme transport to callback
2288 * lpfc_nvme_destroy_localport - Destroy lpfc_nvme bound to nvme transport.
2292 * The lport memory was allocated by the nvme fc transport and is
2315 "6011 Destroying NVME localport x%px\n", in lpfc_nvme_destroy_localport()
2359 "6710 Update NVME fail. No localport\n"); in lpfc_nvme_update_localport()
2365 "6171 Update NVME fail. localP x%px, No lport\n", in lpfc_nvme_update_localport()
2370 "6012 Update NVME lport x%px did x%x\n", in lpfc_nvme_update_localport()
2400 "6006 Register NVME PORT. DID x%06x nlptype x%x\n", in lpfc_nvme_register_port()
2409 /* NVME rports are not preserved across devloss. in lpfc_nvme_register_port()
2523 * If the ndlp represents an NVME Target, that we are logged into,
2524 * ping the NVME FC Transport layer to initiate a device rescan
2549 /* Rescan an NVME target in MAPPED state with DISCOVERY role set */ in lpfc_nvme_rescan_port()
2555 "6172 NVME rescanned DID x%06x " in lpfc_nvme_rescan_port()
2562 "6169 Skip NVME Rport Rescan, NVME remoteport " in lpfc_nvme_rescan_port()
2606 "6033 Unreg nvme remoteport x%px, portname x%llx, " in lpfc_nvme_unregister_port()
2613 /* Sanity check ndlp type. Only call for NVME ports. Don't in lpfc_nvme_unregister_port()
2618 /* No concern about the role change on the nvme remoteport. in lpfc_nvme_unregister_port()
2625 /* Don't let the host nvme transport keep sending keep-alives in lpfc_nvme_unregister_port()
2645 "6167 NVME unregister failed %d " in lpfc_nvme_unregister_port()
2672 * lpfc_sli4_nvme_pci_offline_aborted - Fast-path process of NVME xri abort
2674 * @lpfc_ncmd: The nvme job structure for the request being aborted.
2677 * NVME aborted xri. Aborted NVME IO commands are completed to the transport
2692 /* Aborted NVME commands are required to not complete in lpfc_sli4_nvme_pci_offline_aborted()
2708 * lpfc_sli4_nvme_xri_aborted - Fast-path process of NVME xri abort
2711 * @lpfc_ncmd: The nvme job structure for the request being aborted.
2714 * NVME aborted xri. Aborted NVME IO commands are completed to the transport
2736 /* Aborted NVME commands are required to not complete in lpfc_sli4_nvme_xri_aborted()
2749 * lpfc_nvme_wait_for_io_drain - Wait for all NVME wqes to complete
2752 * This function flushes all wqes in the nvme rings and frees all resources
2788 "6178 NVME IO not empty, " in lpfc_nvme_wait_for_io_drain()
2831 "6194 NVME Cancel xri %x\n", in lpfc_nvme_cancel_iocb()