• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/drivers/infiniband/hw/qib/

Lines Matching defs:tx

904 	struct qib_verbs_txreq *tx;
914 tx = list_entry(l, struct qib_verbs_txreq, txreq.list);
923 tx = NULL;
931 return tx;
934 void qib_put_txreq(struct qib_verbs_txreq *tx)
940 qp = tx->qp;
945 if (tx->mr) {
946 atomic_dec(&tx->mr->refcount);
947 tx->mr = NULL;
949 if (tx->txreq.flags & QIB_SDMA_TXREQ_F_FREEBUF) {
950 tx->txreq.flags &= ~QIB_SDMA_TXREQ_F_FREEBUF;
952 tx->txreq.addr, tx->hdr_dwords << 2,
954 kfree(tx->align_buf);
960 list_add(&tx->txreq.list, &dev->txreq_free);
1033 struct qib_verbs_txreq *tx =
1035 struct qib_qp *qp = tx->qp;
1038 if (tx->wqe)
1039 qib_send_complete(qp, tx->wqe, IB_WC_SUCCESS);
1043 if (tx->txreq.flags & QIB_SDMA_TXREQ_F_FREEBUF)
1044 hdr = &tx->align_buf->hdr;
1048 hdr = &dev->pio_hdrs[tx->hdr_inx].hdr;
1062 qib_put_txreq(tx);
1096 struct qib_verbs_txreq *tx;
1102 tx = qp->s_tx;
1103 if (tx) {
1106 ret = qib_sdma_verbs_send(ppd, tx->ss, tx->dwords, tx);
1110 tx = get_txreq(dev, qp, &ret);
1111 if (!tx)
1116 tx->qp = qp;
1118 tx->wqe = qp->s_wqe;
1119 tx->mr = qp->s_rdma_mr;
1122 tx->txreq.callback = sdma_complete;
1124 tx->txreq.flags = QIB_SDMA_TXREQ_F_HEADTOHOST;
1126 tx->txreq.flags = QIB_SDMA_TXREQ_F_INTREQ;
1128 tx->txreq.flags |= QIB_SDMA_TXREQ_F_USELARGEBUF;
1141 phdr = &dev->pio_hdrs[tx->hdr_inx];
1145 tx->txreq.flags |= QIB_SDMA_TXREQ_F_FREEDESC;
1146 tx->txreq.sg_count = ndesc;
1147 tx->txreq.addr = dev->pio_hdrs_phys +
1148 tx->hdr_inx * sizeof(struct qib_pio_header);
1149 tx->hdr_dwords = hdrwords + 2; /* add PBC length */
1150 ret = qib_sdma_verbs_send(ppd, ss, dwords, tx);
1155 tx->hdr_dwords = plen + 1;
1156 phdr = kmalloc(tx->hdr_dwords << 2, GFP_ATOMIC);
1164 tx->txreq.addr = dma_map_single(&dd->pcidev->dev, phdr,
1165 tx->hdr_dwords << 2, DMA_TO_DEVICE);
1166 if (dma_mapping_error(&dd->pcidev->dev, tx->txreq.addr))
1168 tx->align_buf = phdr;
1169 tx->txreq.flags |= QIB_SDMA_TXREQ_F_FREEBUF;
1170 tx->txreq.sg_count = 1;
1171 ret = qib_sdma_verbs_send(ppd, NULL, 0, tx);
1177 qib_put_txreq(tx);
2050 struct qib_verbs_txreq *tx;
2052 tx = kzalloc(sizeof *tx, GFP_KERNEL);
2053 if (!tx) {
2057 tx->hdr_inx = i;
2058 list_add(&tx->txreq.list, &dev->txreq_free);
2179 struct qib_verbs_txreq *tx;
2182 tx = list_entry(l, struct qib_verbs_txreq, txreq.list);
2183 kfree(tx);
2233 struct qib_verbs_txreq *tx;
2236 tx = list_entry(l, struct qib_verbs_txreq, txreq.list);
2237 kfree(tx);