Lines Matching refs:hq
796 lpfc_sli4_rq_put(struct lpfc_queue *hq, struct lpfc_queue *dq,
806 if (unlikely(!hq) || unlikely(!dq))
808 hq_put_index = hq->host_index;
810 temp_hrqe = lpfc_sli4_qe(hq, hq_put_index);
813 if (hq->type != LPFC_HRQ || dq->type != LPFC_DRQ)
818 if (((hq_put_index + 1) % hq->entry_count) == hq->hba_index)
820 lpfc_sli4_pcimem_bcopy(hrqe, temp_hrqe, hq->entry_size);
824 hq->host_index = ((hq_put_index + 1) % hq->entry_count);
826 hq->RQ_buf_posted++;
829 if (!(hq->host_index % hq->notify_interval)) {
831 if (hq->db_format == LPFC_DB_RING_FORMAT) {
833 hq->notify_interval);
834 bf_set(lpfc_rq_db_ring_fm_id, &doorbell, hq->queue_id);
835 } else if (hq->db_format == LPFC_DB_LIST_FORMAT) {
837 hq->notify_interval);
839 hq->host_index);
840 bf_set(lpfc_rq_db_list_fm_id, &doorbell, hq->queue_id);
844 writel(doorbell.word0, hq->db_regaddr);
859 lpfc_sli4_rq_release(struct lpfc_queue *hq, struct lpfc_queue *dq)
862 if (unlikely(!hq) || unlikely(!dq))
865 if ((hq->type != LPFC_HRQ) || (dq->type != LPFC_DRQ))
867 hq->hba_index = ((hq->hba_index + 1) % hq->entry_count);