Lines Matching refs:tx_desc
246 struct mlx4_en_tx_desc *tx_desc = ring->buf + index * TXBB_SIZE; in mlx4_en_stamp_wqe() local
249 __be32 *ptr = (__be32 *)tx_desc; in mlx4_en_stamp_wqe()
253 if (likely((void *)tx_desc + tx_info->nr_txbb * TXBB_SIZE <= end)) { in mlx4_en_stamp_wqe()
280 struct mlx4_en_tx_desc *tx_desc = ring->buf + index * TXBB_SIZE; in mlx4_en_free_tx_desc() local
281 struct mlx4_wqe_data_seg *data = (void *) tx_desc + tx_info->data_offset; in mlx4_en_free_tx_desc()
300 if (likely((void *) tx_desc + tx_info->nr_txbb * TXBB_SIZE <= end)) { in mlx4_en_free_tx_desc()
633 static void build_inline_wqe(struct mlx4_en_tx_desc *tx_desc, in build_inline_wqe() argument
639 struct mlx4_wqe_inline_seg *inl = &tx_desc->inl; in build_inline_wqe()
711 struct mlx4_en_tx_desc *tx_desc; in mlx4_en_xmit() local
770 tx_desc = ring->buf + index * TXBB_SIZE; in mlx4_en_xmit()
772 tx_desc = (struct mlx4_en_tx_desc *) ring->bounce_buf; in mlx4_en_xmit()
781 data = &tx_desc->data; in mlx4_en_xmit()
783 data = ((void *)&tx_desc->lso + ALIGN(lso_header_size + 4, in mlx4_en_xmit()
787 tx_info->data_offset = (void *)data - (void *)tx_desc; in mlx4_en_xmit()
853 tx_desc->ctrl.srcrb_flags = priv->ctrl_flags; in mlx4_en_xmit()
856 tx_desc->ctrl.srcrb_flags |= cpu_to_be32(MLX4_WQE_CTRL_IP_CSUM | in mlx4_en_xmit()
859 tx_desc->ctrl.srcrb_flags |= cpu_to_be32(MLX4_WQE_CTRL_IP_CSUM); in mlx4_en_xmit()
870 tx_desc->ctrl.srcrb_flags16[0] = get_unaligned((__be16 *)ethh->h_dest); in mlx4_en_xmit()
871 tx_desc->ctrl.imm = get_unaligned((__be32 *)(ethh->h_dest + 2)); in mlx4_en_xmit()
884 tx_desc->lso.mss_hdr_size = cpu_to_be32( in mlx4_en_xmit()
889 memcpy(tx_desc->lso.header, skb->data, lso_header_size); in mlx4_en_xmit()
910 build_inline_wqe(tx_desc, skb, shinfo, real_size, &vlan_tag, in mlx4_en_xmit()
925 tx_desc = mlx4_en_bounce_to_desc(priv, ring, index, desc_size); in mlx4_en_xmit()
941 tx_desc->ctrl.bf_qpn = ring->doorbell_qpn | in mlx4_en_xmit()
949 tx_desc->ctrl.owner_opcode = op_own; in mlx4_en_xmit()
953 mlx4_bf_copy(ring->bf.reg + ring->bf.offset, &tx_desc->ctrl, in mlx4_en_xmit()
960 tx_desc->ctrl.vlan_tag = cpu_to_be16(vlan_tag); in mlx4_en_xmit()
961 tx_desc->ctrl.ins_vlan = MLX4_WQE_CTRL_INS_VLAN * in mlx4_en_xmit()
963 tx_desc->ctrl.fence_size = real_size; in mlx4_en_xmit()
969 tx_desc->ctrl.owner_opcode = op_own; in mlx4_en_xmit()