Lines Matching refs:ud_header
2850 ib_ud_header_init(send_size, 1, 0, 0, 0, 0, 0, 0, &sqp->ud_header); in build_sriov_qp0_header()
2853 sqp->ud_header.lrh.service_level = in build_sriov_qp0_header()
2855 sqp->ud_header.lrh.destination_lid = in build_sriov_qp0_header()
2857 sqp->ud_header.lrh.source_lid = in build_sriov_qp0_header()
2865 mlx->rlid = sqp->ud_header.lrh.destination_lid; in build_sriov_qp0_header()
2867 sqp->ud_header.lrh.virtual_lane = 0; in build_sriov_qp0_header()
2868 sqp->ud_header.bth.solicited_event = !!(wr->wr.send_flags & IB_SEND_SOLICITED); in build_sriov_qp0_header()
2872 sqp->ud_header.bth.pkey = cpu_to_be16(pkey); in build_sriov_qp0_header()
2874 sqp->ud_header.bth.destination_qpn = cpu_to_be32(wr->remote_qpn); in build_sriov_qp0_header()
2876 sqp->ud_header.bth.destination_qpn = in build_sriov_qp0_header()
2879 sqp->ud_header.bth.psn = cpu_to_be32((sqp->send_psn++) & ((1 << 24) - 1)); in build_sriov_qp0_header()
2887 sqp->ud_header.deth.qkey = cpu_to_be32(qkey); in build_sriov_qp0_header()
2888 sqp->ud_header.deth.source_qpn = cpu_to_be32(qp->mqp.qpn); in build_sriov_qp0_header()
2890 sqp->ud_header.bth.opcode = IB_OPCODE_UD_SEND_ONLY; in build_sriov_qp0_header()
2891 sqp->ud_header.immediate_present = 0; in build_sriov_qp0_header()
2893 header_size = ib_ud_header_pack(&sqp->ud_header, sqp->header_buf); in build_sriov_qp0_header()
3036 ip_version, is_udp, 0, &sqp->ud_header); in build_mlx_header()
3041 sqp->ud_header.lrh.service_level = in build_mlx_header()
3043 sqp->ud_header.lrh.destination_lid = ah->av.ib.dlid; in build_mlx_header()
3044 sqp->ud_header.lrh.source_lid = cpu_to_be16(ah->av.ib.g_slid & 0x7f); in build_mlx_header()
3048 sqp->ud_header.grh.traffic_class = in build_mlx_header()
3050 sqp->ud_header.grh.flow_label = in build_mlx_header()
3052 sqp->ud_header.grh.hop_limit = ah->av.ib.hop_limit; in build_mlx_header()
3054 memcpy(sqp->ud_header.grh.source_gid.raw, sgid.raw, 16); in build_mlx_header()
3061 sqp->ud_header.grh.source_gid.global in build_mlx_header()
3068 sqp->ud_header.grh.source_gid.global in build_mlx_header()
3074 sqp->ud_header.grh.source_gid = in build_mlx_header()
3078 memcpy(sqp->ud_header.grh.destination_gid.raw, in build_mlx_header()
3083 sqp->ud_header.ip4.tos = in build_mlx_header()
3085 sqp->ud_header.ip4.id = 0; in build_mlx_header()
3086 sqp->ud_header.ip4.frag_off = htons(IP_DF); in build_mlx_header()
3087 sqp->ud_header.ip4.ttl = ah->av.eth.hop_limit; in build_mlx_header()
3089 memcpy(&sqp->ud_header.ip4.saddr, in build_mlx_header()
3091 memcpy(&sqp->ud_header.ip4.daddr, ah->av.ib.dgid + 12, 4); in build_mlx_header()
3092 sqp->ud_header.ip4.check = ib_ud_ip4_csum(&sqp->ud_header); in build_mlx_header()
3096 sqp->ud_header.udp.dport = htons(ROCE_V2_UDP_DPORT); in build_mlx_header()
3097 sqp->ud_header.udp.sport = htons(MLX4_ROCEV2_QP1_SPORT); in build_mlx_header()
3098 sqp->ud_header.udp.csum = 0; in build_mlx_header()
3106 (sqp->ud_header.lrh.destination_lid == in build_mlx_header()
3110 (sqp->ud_header.lrh.service_level << 8)); in build_mlx_header()
3113 mlx->rlid = sqp->ud_header.lrh.destination_lid; in build_mlx_header()
3118 sqp->ud_header.bth.opcode = IB_OPCODE_UD_SEND_ONLY; in build_mlx_header()
3119 sqp->ud_header.immediate_present = 0; in build_mlx_header()
3122 sqp->ud_header.bth.opcode = IB_OPCODE_UD_SEND_ONLY_WITH_IMMEDIATE; in build_mlx_header()
3123 sqp->ud_header.immediate_present = 1; in build_mlx_header()
3124 sqp->ud_header.immediate_data = wr->wr.ex.imm_data; in build_mlx_header()
3139 ether_addr_copy(sqp->ud_header.eth.smac_h, ah->av.eth.s_mac); in build_mlx_header()
3140 ether_addr_copy(sqp->ud_header.eth.dmac_h, ah->av.eth.mac); in build_mlx_header()
3144 if (!memcmp(sqp->ud_header.eth.smac_h, sqp->ud_header.eth.dmac_h, 6)) in build_mlx_header()
3147 sqp->ud_header.eth.type = cpu_to_be16(ether_type); in build_mlx_header()
3149 sqp->ud_header.vlan.type = cpu_to_be16(ether_type); in build_mlx_header()
3150 sqp->ud_header.vlan.tag = cpu_to_be16(vlan | pcp); in build_mlx_header()
3153 sqp->ud_header.lrh.virtual_lane = in build_mlx_header()
3157 sqp->ud_header.lrh.service_level, in build_mlx_header()
3159 if (qp->ibqp.qp_num && sqp->ud_header.lrh.virtual_lane == 15) in build_mlx_header()
3161 if (sqp->ud_header.lrh.destination_lid == IB_LID_PERMISSIVE) in build_mlx_header()
3162 sqp->ud_header.lrh.source_lid = IB_LID_PERMISSIVE; in build_mlx_header()
3164 sqp->ud_header.bth.solicited_event = !!(wr->wr.send_flags & IB_SEND_SOLICITED); in build_mlx_header()
3174 sqp->ud_header.bth.pkey = cpu_to_be16(pkey); in build_mlx_header()
3175 sqp->ud_header.bth.destination_qpn = cpu_to_be32(wr->remote_qpn); in build_mlx_header()
3176 sqp->ud_header.bth.psn = cpu_to_be32((sqp->send_psn++) & ((1 << 24) - 1)); in build_mlx_header()
3177 sqp->ud_header.deth.qkey = cpu_to_be32(wr->remote_qkey & 0x80000000 ? in build_mlx_header()
3179 sqp->ud_header.deth.source_qpn = cpu_to_be32(qp->ibqp.qp_num); in build_mlx_header()
3181 header_size = ib_ud_header_pack(&sqp->ud_header, sqp->header_buf); in build_mlx_header()