Lines Matching refs:hq
671 lpfc_sli4_rq_put(struct lpfc_queue *hq, struct lpfc_queue *dq, in lpfc_sli4_rq_put() argument
681 if (unlikely(!hq) || unlikely(!dq)) in lpfc_sli4_rq_put()
683 hq_put_index = hq->host_index; in lpfc_sli4_rq_put()
685 temp_hrqe = lpfc_sli4_qe(hq, hq_put_index); in lpfc_sli4_rq_put()
688 if (hq->type != LPFC_HRQ || dq->type != LPFC_DRQ) in lpfc_sli4_rq_put()
693 if (((hq_put_index + 1) % hq->entry_count) == hq->hba_index) in lpfc_sli4_rq_put()
695 lpfc_sli4_pcimem_bcopy(hrqe, temp_hrqe, hq->entry_size); in lpfc_sli4_rq_put()
699 hq->host_index = ((hq_put_index + 1) % hq->entry_count); in lpfc_sli4_rq_put()
701 hq->RQ_buf_posted++; in lpfc_sli4_rq_put()
704 if (!(hq->host_index % hq->notify_interval)) { in lpfc_sli4_rq_put()
706 if (hq->db_format == LPFC_DB_RING_FORMAT) { in lpfc_sli4_rq_put()
708 hq->notify_interval); in lpfc_sli4_rq_put()
709 bf_set(lpfc_rq_db_ring_fm_id, &doorbell, hq->queue_id); in lpfc_sli4_rq_put()
710 } else if (hq->db_format == LPFC_DB_LIST_FORMAT) { in lpfc_sli4_rq_put()
712 hq->notify_interval); in lpfc_sli4_rq_put()
714 hq->host_index); in lpfc_sli4_rq_put()
715 bf_set(lpfc_rq_db_list_fm_id, &doorbell, hq->queue_id); in lpfc_sli4_rq_put()
719 writel(doorbell.word0, hq->db_regaddr); in lpfc_sli4_rq_put()
734 lpfc_sli4_rq_release(struct lpfc_queue *hq, struct lpfc_queue *dq) in lpfc_sli4_rq_release() argument
737 if (unlikely(!hq) || unlikely(!dq)) in lpfc_sli4_rq_release()
740 if ((hq->type != LPFC_HRQ) || (dq->type != LPFC_DRQ)) in lpfc_sli4_rq_release()
742 hq->hba_index = ((hq->hba_index + 1) % hq->entry_count); in lpfc_sli4_rq_release()