Lines Matching full:txp
236 struct ipoib_txparms *txp) in hfi1_ipoib_build_ulp_payload() argument
238 struct hfi1_devdata *dd = txp->dd; in hfi1_ipoib_build_ulp_payload()
267 struct ipoib_txparms *txp) in hfi1_ipoib_build_tx_desc() argument
269 struct hfi1_devdata *dd = txp->dd; in hfi1_ipoib_build_tx_desc()
273 sizeof(sdma_hdr->pbc) + (txp->hdr_dwords << 2) + tx->skb->len; in hfi1_ipoib_build_tx_desc()
284 sizeof(sdma_hdr->pbc) + (txp->hdr_dwords << 2)); in hfi1_ipoib_build_tx_desc()
289 return hfi1_ipoib_build_ulp_payload(tx, txp); in hfi1_ipoib_build_tx_desc()
293 struct ipoib_txparms *txp) in hfi1_ipoib_build_ib_tx_headers() argument
298 struct hfi1_pportdata *ppd = ppd_from_ibp(txp->ibp); in hfi1_ipoib_build_ib_tx_headers()
299 struct rdma_ah_attr *ah_attr = txp->ah_attr; in hfi1_ipoib_build_ib_tx_headers()
319 txp->hdr_dwords = 7; in hfi1_ipoib_build_ib_tx_headers()
323 txp->hdr_dwords += in hfi1_ipoib_build_ib_tx_headers()
324 hfi1_make_grh(txp->ibp, in hfi1_ipoib_build_ib_tx_headers()
327 txp->hdr_dwords - LRH_9B_DWORDS, in hfi1_ipoib_build_ib_tx_headers()
337 lrh0 |= (txp->flow.sc5 & 0xf) << 12; in hfi1_ipoib_build_ib_tx_headers()
355 dwords = txp->hdr_dwords + payload_dwords; in hfi1_ipoib_build_ib_tx_headers()
365 ohdr->bth[1] = cpu_to_be32(txp->dqpn); in hfi1_ipoib_build_ib_tx_headers()
366 ohdr->bth[2] = cpu_to_be32(mask_psn((u32)txp->txq->sent_txreqs)); in hfi1_ipoib_build_ib_tx_headers()
370 ohdr->u.ud.deth[1] = cpu_to_be32((txp->entropy << in hfi1_ipoib_build_ib_tx_headers()
376 ib_is_sc5(txp->flow.sc5) << in hfi1_ipoib_build_ib_tx_headers()
379 sc_to_vlt(priv->dd, txp->flow.sc5), in hfi1_ipoib_build_ib_tx_headers()
386 struct ipoib_txparms *txp) in hfi1_ipoib_send_dma_common() argument
401 tx->txq = txp->txq; in hfi1_ipoib_send_dma_common()
405 hfi1_ipoib_build_ib_tx_headers(tx, txp); in hfi1_ipoib_send_dma_common()
407 ret = hfi1_ipoib_build_tx_desc(tx, txp); in hfi1_ipoib_send_dma_common()
409 if (txp->txq->flow.as_int != txp->flow.as_int) { in hfi1_ipoib_send_dma_common()
410 txp->txq->flow.tx_queue = txp->flow.tx_queue; in hfi1_ipoib_send_dma_common()
411 txp->txq->flow.sc5 = txp->flow.sc5; in hfi1_ipoib_send_dma_common()
412 txp->txq->sde = in hfi1_ipoib_send_dma_common()
414 txp->flow.tx_queue, in hfi1_ipoib_send_dma_common()
415 txp->flow.sc5); in hfi1_ipoib_send_dma_common()
416 trace_hfi1_flow_switch(txp->txq); in hfi1_ipoib_send_dma_common()
482 struct ipoib_txparms *txp) in hfi1_ipoib_send_dma_single() argument
485 struct hfi1_ipoib_txq *txq = txp->txq; in hfi1_ipoib_send_dma_single()
489 tx = hfi1_ipoib_send_dma_common(dev, skb, txp); in hfi1_ipoib_send_dma_single()
508 ib_is_sc5(txp->flow.sc5)); in hfi1_ipoib_send_dma_single()
528 struct ipoib_txparms *txp) in hfi1_ipoib_send_dma_list() argument
530 struct hfi1_ipoib_txq *txq = txp->txq; in hfi1_ipoib_send_dma_list()
534 if (txq->flow.as_int != txp->flow.as_int) { in hfi1_ipoib_send_dma_list()
546 tx = hfi1_ipoib_send_dma_common(dev, skb, txp); in hfi1_ipoib_send_dma_list()
566 ib_is_sc5(txp->flow.sc5)); in hfi1_ipoib_send_dma_list()
591 struct ipoib_txparms txp; in hfi1_ipoib_send_dma() local
604 txp.dd = priv->dd; in hfi1_ipoib_send_dma()
605 txp.ah_attr = &ibah_to_rvtah(address)->attr; in hfi1_ipoib_send_dma()
606 txp.ibp = to_iport(priv->device, priv->port_num); in hfi1_ipoib_send_dma()
607 txp.txq = &priv->txqs[skb_get_queue_mapping(skb)]; in hfi1_ipoib_send_dma()
608 txp.dqpn = dqpn; in hfi1_ipoib_send_dma()
609 txp.flow.sc5 = txp.ibp->sl_to_sc[rdma_ah_get_sl(txp.ah_attr)]; in hfi1_ipoib_send_dma()
610 txp.flow.tx_queue = (u8)skb_get_queue_mapping(skb); in hfi1_ipoib_send_dma()
611 txp.entropy = hfi1_ipoib_calc_entropy(skb); in hfi1_ipoib_send_dma()
613 if (netdev_xmit_more() || !list_empty(&txp.txq->tx_list)) in hfi1_ipoib_send_dma()
614 return hfi1_ipoib_send_dma_list(dev, skb, &txp); in hfi1_ipoib_send_dma()
616 return hfi1_ipoib_send_dma_single(dev, skb, &txp); in hfi1_ipoib_send_dma()