• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/scsi/lpfc/

Lines Matching refs:piocb

696 	struct lpfc_iocbq *piocb;
699 list_remove_head(iocblist, piocb, struct lpfc_iocbq, list);
701 if (!piocb->iocb_cmpl)
702 lpfc_sli_release_iocbq(phba, piocb);
704 piocb->iocb.ulpStatus = ulpstatus;
705 piocb->iocb.un.ulpWord[4] = ulpWord4;
706 (piocb->iocb_cmpl) (phba, piocb, piocb);
874 * @piocb: Pointer to the driver iocb object.
884 struct lpfc_iocbq *piocb)
886 list_add_tail(&piocb->list, &pring->txcmplq);
887 piocb->iocb_flag |= LPFC_IO_ON_Q;
893 (piocb->iocb.ulpCommand != CMD_ABORT_XRI_CN) &&
894 (piocb->iocb.ulpCommand != CMD_CLOSE_XRI_CN)) {
895 if (!piocb->vport)
898 mod_timer(&piocb->vport->els_tmofunc,
5639 * @piocb: Pointer to address of newly added command iocb.
5647 struct lpfc_iocbq *piocb)
5650 list_add_tail(&piocb->list, &pring->txq);
5658 * @piocb: Pointer to address of newly added command iocb.
5668 * *piocb and *piocb is set to NULL. Caller needs to check
5669 * *piocb to find if there are more commands in the txq.
5673 struct lpfc_iocbq **piocb)
5679 nextiocb = *piocb;
5680 *piocb = NULL;
5690 * @piocb: Pointer to command iocb.
5710 struct lpfc_iocbq *piocb, uint32_t flag)
5716 if (piocb->iocb_cmpl && (!piocb->vport) &&
5717 (piocb->iocb.ulpCommand != CMD_ABORT_XRI_CN) &&
5718 (piocb->iocb.ulpCommand != CMD_CLOSE_XRI_CN)) {
5722 piocb->iocb.ulpCommand);
5754 switch (piocb->iocb.ulpCommand) {
5758 (piocb->iocb.un.genreq64.w5.hcsw.Rctl !=
5760 (piocb->iocb.un.genreq64.w5.hcsw.Type !=
5771 if (piocb->iocb_cmpl)
5772 piocb->iocb_cmpl = NULL;
5792 (nextiocb = lpfc_sli_next_iocb(phba, pring, &piocb)))
5800 if (!piocb)
5811 __lpfc_sli_ringtx_put(phba, pring, piocb);
5821 * @piocb: Pointer to command iocb.
5923 * @piocb: Pointer to command iocb.
6247 * @piocb: Pointer to command iocb.
6259 struct lpfc_iocbq *piocb, uint32_t flag)
6265 if (piocb->sli4_xritag == NO_XRI) {
6266 if (piocb->iocb.ulpCommand == CMD_ABORT_XRI_CN ||
6267 piocb->iocb.ulpCommand == CMD_CLOSE_XRI_CN)
6273 pring, piocb);
6284 piocb);
6291 } else if (piocb->iocb_flag & LPFC_IO_FCP) {
6299 sglq = __lpfc_get_active_sglq(phba, piocb->sli4_xritag);
6305 piocb->sli4_xritag = sglq->sli4_xritag;
6307 if (NO_XRI == lpfc_sli4_bpl2sgl(phba, piocb, sglq))
6311 if (lpfc_sli4_iocb2wqe(phba, piocb, &wqe))
6314 if ((piocb->iocb_flag & LPFC_IO_FCP) ||
6315 (piocb->iocb_flag & LPFC_USE_FCPWQIDX)) {
6322 if (piocb->iocb_flag & LPFC_IO_FCP)
6323 piocb->fcp_wqidx = lpfc_sli4_scmd_to_wqidx_distr(phba);
6324 if (lpfc_sli4_wq_put(phba->sli4_hba.fcp_wq[piocb->fcp_wqidx],
6331 lpfc_sli_ringtxcmpl_put(phba, pring, piocb);
6349 struct lpfc_iocbq *piocb, uint32_t flag)
6351 return phba->__lpfc_sli_issue_iocb(phba, ring_number, piocb, flag);
6391 * @piocb: Pointer to command iocb.
6402 struct lpfc_iocbq *piocb, uint32_t flag)
6408 rc = __lpfc_sli_issue_iocb(phba, ring_number, piocb, flag);
7636 * @piocb: Pointer to command iocb.
7665 struct lpfc_iocbq *piocb,
7679 if (piocb->context2)
7681 piocb->context2 = prspiocbq;
7684 piocb->iocb_cmpl = lpfc_sli_wake_iocb_wait;
7685 piocb->context_un.wait_queue = &done_q;
7686 piocb->iocb_flag &= ~LPFC_IO_WAKE;
7695 retval = lpfc_sli_issue_iocb(phba, ring_number, piocb,
7700 lpfc_chk_iocb_flg(phba, piocb, LPFC_IO_WAKE),
7703 if (piocb->iocb_flag & LPFC_IO_WAKE) {
7738 piocb->context2 = NULL;
7740 piocb->context_un.wait_queue = NULL;
7741 piocb->iocb_cmpl = NULL;