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

Lines Matching refs:nescq

1118 	struct nes_cq *nescq;
1271 nescq = to_nescq(init_attr->send_cq);
1272 nesqp->nesscq = nescq;
1273 nescq = to_nescq(init_attr->recv_cq);
1274 nesqp->nesrcq = nescq;
1428 static void nes_clean_cq(struct nes_qp *nesqp, struct nes_cq *nescq)
1436 spin_lock_irqsave(&nescq->lock, flags);
1438 cq_head = nescq->hw_cq.cq_head;
1439 while (le32_to_cpu(nescq->hw_cq.cq_vbase[cq_head].cqe_words[NES_CQE_OPCODE_IDX]) & NES_CQE_VALID) {
1441 lo = le32_to_cpu(nescq->hw_cq.cq_vbase[cq_head].cqe_words[NES_CQE_COMP_COMP_CTX_LOW_IDX]);
1442 hi = le32_to_cpu(nescq->hw_cq.cq_vbase[cq_head].cqe_words[NES_CQE_COMP_COMP_CTX_HIGH_IDX]);
1447 nescq->hw_cq.cq_vbase[cq_head].cqe_words[NES_CQE_COMP_COMP_CTX_LOW_IDX] = 0;
1448 nescq->hw_cq.cq_vbase[cq_head].cqe_words[NES_CQE_COMP_COMP_CTX_HIGH_IDX] = 0;
1451 if (++cq_head >= nescq->hw_cq.cq_size)
1455 spin_unlock_irqrestore(&nescq->lock, flags);
1539 struct nes_cq *nescq;
1563 nescq = kzalloc(sizeof(struct nes_cq), GFP_KERNEL);
1564 if (!nescq) {
1570 nescq->hw_cq.cq_size = max(entries + 1, 5);
1571 nescq->hw_cq.cq_number = cq_num;
1572 nescq->ibcq.cqe = nescq->hw_cq.cq_size - 1;
1579 kfree(nescq);
1586 nescq->hw_cq.cq_number = nesvnic->nic.qp_id + 28 + 2 * ((nes_ucontext->mcrqf & 0xf) - 1);
1588 nescq->hw_cq.cq_number = nes_ucontext->mcrqf & 0xffff;
1590 nescq->hw_cq.cq_number = nesvnic->mcrq_qp_id + nes_ucontext->mcrqf-1;
1591 nescq->mcrqf = nes_ucontext->mcrqf;
1608 kfree(nescq);
1613 nescq->cq_mem_size = 0;
1615 nescq->cq_mem_size = nescq->hw_cq.cq_size * sizeof(struct nes_hw_cqe);
1617 entries, nescq->cq_mem_size, nescq->hw_cq.cq_number);
1620 mem = pci_alloc_consistent(nesdev->pcidev, nescq->cq_mem_size,
1621 &nescq->hw_cq.cq_pbase);
1625 kfree(nescq);
1629 memset(mem, 0, nescq->cq_mem_size);
1630 nescq->hw_cq.cq_vbase = mem;
1631 nescq->hw_cq.cq_head = 0;
1633 nescq->hw_cq.cq_number, nescq->hw_cq.cq_vbase,
1634 (u32)nescq->hw_cq.cq_pbase);
1637 nescq->hw_cq.ce_handler = nes_iwarp_ce_handler;
1638 spin_lock_init(&nescq->lock);
1645 pci_free_consistent(nesdev->pcidev, nescq->cq_mem_size, mem,
1646 nescq->hw_cq.cq_pbase);
1654 kfree(nescq);
1662 NES_CQP_CQ_CEQE_MASK | ((u32)nescq->hw_cq.cq_size << 16);
1674 pci_free_consistent(nesdev->pcidev, nescq->cq_mem_size, mem,
1675 nescq->hw_cq.cq_pbase);
1682 kfree(nescq);
1686 nescq->virtual_cq = 2;
1696 pci_free_consistent(nesdev->pcidev, nescq->cq_mem_size, mem,
1697 nescq->hw_cq.cq_pbase);
1704 kfree(nescq);
1708 nescq->virtual_cq = 1;
1719 (nescq->hw_cq.cq_number | ((u32)nesdev->ceq_index << 16)));
1729 u64temp = (u64)nescq->hw_cq.cq_pbase;
1734 u64temp = (u64)(unsigned long)&nescq->hw_cq;
1745 nescq->hw_cq.cq_number);
1749 nescq->hw_cq.cq_number, ret);
1753 pci_free_consistent(nesdev->pcidev, nescq->cq_mem_size, mem,
1754 nescq->hw_cq.cq_pbase);
1761 kfree(nescq);
1771 resp.cq_id = nescq->hw_cq.cq_number;
1772 resp.cq_size = nescq->hw_cq.cq_size;
1776 kfree(nescq);
1781 return &nescq->ibcq;
1790 struct nes_cq *nescq;
1803 nescq = to_nescq(ib_cq);
1808 nes_debug(NES_DBG_CQ, "Destroy CQ%u\n", nescq->hw_cq.cq_number);
1818 opcode = NES_CQP_DESTROY_CQ | (nescq->hw_cq.cq_size << 16);
1820 if (nescq->virtual_cq == 1) {
1826 } else if (nescq->virtual_cq == 2) {
1840 (nescq->hw_cq.cq_number | ((u32)PCI_FUNC(nesdev->pcidev->devfn) << 16)));
1841 if (!nescq->mcrqf)
1842 nes_free_resource(nesadapter, nesadapter->allocated_cqs, nescq->hw_cq.cq_number);
1849 nescq->hw_cq.cq_number);
1854 nescq->hw_cq.cq_number, ret, cqp_request->major_code,
1858 nescq->hw_cq.cq_number);
1862 nescq->hw_cq.cq_number);
1869 if (nescq->cq_mem_size)
1870 pci_free_consistent(nesdev->pcidev, nescq->cq_mem_size,
1871 nescq->hw_cq.cq_vbase, nescq->hw_cq.cq_pbase);
1872 kfree(nescq);
3640 struct nes_cq *nescq = to_nescq(ibcq);
3654 spin_lock_irqsave(&nescq->lock, flags);
3656 head = nescq->hw_cq.cq_head;
3657 cq_size = nescq->hw_cq.cq_size;
3660 if ((le32_to_cpu(nescq->hw_cq.cq_vbase[head].cqe_words[NES_CQE_OPCODE_IDX]) &
3670 cqe = nescq->hw_cq.cq_vbase[head];
3689 nescq->hw_cq.cq_vbase[head].cqe_words[NES_CQE_ERROR_CODE_IDX] =
3765 nescq->hw_cq.cq_vbase[head].cqe_words[NES_CQE_OPCODE_IDX] = 0;
3768 nescq->polled_completions++;
3770 if ((nescq->polled_completions > (cq_size / 2)) ||
3771 (nescq->polled_completions == 255)) {
3774 nescq->hw_cq.cq_number, nescq->polled_completions, cq_size);
3776 nescq->hw_cq.cq_number | (nescq->polled_completions << 16));
3777 nescq->polled_completions = 0;
3783 nescq->hw_cq.cq_vbase[head].cqe_words[NES_CQE_COMP_COMP_CTX_LOW_IDX] =
3789 if (nescq->polled_completions) {
3791 nescq->hw_cq.cq_number | (nescq->polled_completions << 16));
3792 nescq->polled_completions = 0;
3795 nescq->hw_cq.cq_head = head;
3797 cqe_count, nescq->hw_cq.cq_number);
3799 spin_unlock_irqrestore(&nescq->lock, flags);
3812 struct nes_cq *nescq = to_nescq(ibcq);
3816 nescq->hw_cq.cq_number);
3818 cq_arm = nescq->hw_cq.cq_number;