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