| /linux/drivers/infiniband/hw/mlx4/ |
| H A D | ah.c | 43 static void create_ib_ah(struct ib_ah *ib_ah, struct rdma_ah_attr *ah_attr) in create_ib_ah() argument 49 (rdma_ah_get_port_num(ah_attr) << 24)); in create_ib_ah() 50 ah->av.ib.g_slid = rdma_ah_get_path_bits(ah_attr); in create_ib_ah() 52 cpu_to_be32(rdma_ah_get_sl(ah_attr) << 28); in create_ib_ah() 53 if (rdma_ah_get_ah_flags(ah_attr) & IB_AH_GRH) { in create_ib_ah() 54 const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); in create_ib_ah() 65 ah->av.ib.dlid = cpu_to_be16(rdma_ah_get_dlid(ah_attr)); in create_ib_ah() 66 if (rdma_ah_get_static_rate(ah_attr)) { in create_ib_ah() 67 u8 static_rate = rdma_ah_get_static_rate(ah_attr) + in create_ib_ah() 77 static int create_iboe_ah(struct ib_ah *ib_ah, struct rdma_ah_attr *ah_attr) in create_iboe_ah() argument [all …]
|
| H A D | mad.c | 192 struct rdma_ah_attr ah_attr; in update_sm_ah() local 198 memset(&ah_attr, 0, sizeof ah_attr); in update_sm_ah() 199 ah_attr.type = rdma_ah_find_type(&dev->ib_dev, port_num); in update_sm_ah() 200 rdma_ah_set_dlid(&ah_attr, lid); in update_sm_ah() 201 rdma_ah_set_sl(&ah_attr, sl); in update_sm_ah() 202 rdma_ah_set_port_num(&ah_attr, port_num); in update_sm_ah() 205 &ah_attr, 0); in update_sm_ah() 1468 struct rdma_ah_attr *ah_attr) in fill_in_real_sgid_index() argument 1470 struct ib_global_route *grh = rdma_ah_retrieve_grh(ah_attr); in fill_in_real_sgid_index() 1484 struct rdma_ah_attr ah_attr; in mlx4_ib_multiplex_mad() local [all …]
|
| H A D | mcg.c | 212 struct rdma_ah_attr ah_attr; in send_mad_to_wire() local 221 mlx4_ib_query_ah(dev->sm_ah[ctx->port - 1], &ah_attr); in send_mad_to_wire() 225 &ah_attr, NULL, 0xffff, mad); in send_mad_to_wire() 234 struct rdma_ah_attr ah_attr; in send_mad_to_slave() local 240 rdma_query_ah(dev->sm_ah[ctx->port - 1], &ah_attr); in send_mad_to_slave() 247 wc.slid = rdma_ah_get_dlid(&ah_attr); /* opensm lid */ in send_mad_to_slave()
|
| /linux/drivers/infiniband/core/ |
| H A D | lag.c | 11 struct rdma_ah_attr *ah_attr, in rdma_build_skb() argument 23 is_ipv4 = ipv6_addr_v4mapped((struct in6_addr *)ah_attr->grh.dgid.raw); in rdma_build_skb() 37 htons(rdma_flow_label_to_udp_sport(ah_attr->grh.flow_label)); in rdma_build_skb() 51 memcpy(&iph->saddr, ah_attr->grh.sgid_attr->gid.raw + 12, in rdma_build_skb() 53 memcpy(&iph->daddr, ah_attr->grh.dgid.raw + 12, in rdma_build_skb() 61 memcpy(&ip6h->flow_lbl, &ah_attr->grh.flow_label, in rdma_build_skb() 63 memcpy(&ip6h->saddr, ah_attr->grh.sgid_attr->gid.raw, in rdma_build_skb() 65 memcpy(&ip6h->daddr, ah_attr->grh.dgid.raw, in rdma_build_skb() 73 rdma_read_gid_l2_fields(ah_attr->grh.sgid_attr, NULL, smac); in rdma_build_skb() 75 memcpy(eth->h_dest, ah_attr->roce.dmac, ETH_ALEN); in rdma_build_skb() [all …]
|
| H A D | sa_query.c | 1257 struct rdma_ah_attr *ah_attr, in init_ah_attr_grh_fields() argument 1270 rdma_move_grh_sgid_attr(ah_attr, &rec->dgid, in init_ah_attr_grh_fields() 1295 struct rdma_ah_attr *ah_attr, in ib_init_ah_attr_from_path() argument 1300 memset(ah_attr, 0, sizeof(*ah_attr)); in ib_init_ah_attr_from_path() 1301 ah_attr->type = rdma_ah_find_type(device, port_num); in ib_init_ah_attr_from_path() 1302 rdma_ah_set_sl(ah_attr, rec->sl); in ib_init_ah_attr_from_path() 1303 rdma_ah_set_port_num(ah_attr, port_num); in ib_init_ah_attr_from_path() 1304 rdma_ah_set_static_rate(ah_attr, rec->rate); in ib_init_ah_attr_from_path() 1311 memcpy(ah_attr->roce.dmac, sa_path_get_dmac(rec), ETH_ALEN); in ib_init_ah_attr_from_path() 1313 rdma_ah_set_dlid(ah_attr, be32_to_cpu(sa_path_get_dlid(rec))); in ib_init_ah_attr_from_path() [all …]
|
| H A D | user_mad.c | 274 struct rdma_ah_attr ah_attr; in recv_handler() local 281 &ah_attr); in recv_handler() 285 grh = rdma_ah_read_grh(&ah_attr); in recv_handler() 291 rdma_destroy_ah_attr(&ah_attr); in recv_handler() 514 struct rdma_ah_attr ah_attr; in ib_umad_write() local 556 memset(&ah_attr, 0, sizeof ah_attr); in ib_umad_write() 557 ah_attr.type = rdma_ah_find_type(agent->device, in ib_umad_write() 559 rdma_ah_set_dlid(&ah_attr, be16_to_cpu(packet->mad.hdr.lid)); in ib_umad_write() 560 rdma_ah_set_sl(&ah_attr, packet->mad.hdr.sl); in ib_umad_write() 561 rdma_ah_set_path_bits(&ah_attr, packet->mad.hdr.path_bits); in ib_umad_write() [all …]
|
| H A D | multicast.c | 739 struct rdma_ah_attr *ah_attr) in ib_init_ah_from_mcmember() argument 756 memset(ah_attr, 0, sizeof(*ah_attr)); in ib_init_ah_from_mcmember() 757 ah_attr->type = rdma_ah_find_type(device, port_num); in ib_init_ah_from_mcmember() 759 rdma_ah_set_dlid(ah_attr, be16_to_cpu(rec->mlid)); in ib_init_ah_from_mcmember() 760 rdma_ah_set_sl(ah_attr, rec->sl); in ib_init_ah_from_mcmember() 761 rdma_ah_set_port_num(ah_attr, port_num); in ib_init_ah_from_mcmember() 762 rdma_ah_set_static_rate(ah_attr, rec->rate); in ib_init_ah_from_mcmember() 763 rdma_move_grh_sgid_attr(ah_attr, &rec->mgid, in ib_init_ah_from_mcmember()
|
| H A D | mad_rmpp.c | 855 struct rdma_ah_attr ah_attr; in init_newwin() local 870 if (rdma_query_ah(mad_send_wr->send_buf.ah, &ah_attr)) in init_newwin() 873 if (rmpp_recv->slid == rdma_ah_get_dlid(&ah_attr)) { in init_newwin()
|
| /linux/drivers/infiniband/sw/rdmavt/ |
| H A D | ah.c | 21 struct rdma_ah_attr *ah_attr) in rvt_check_ah() argument 24 int port_num = rdma_ah_get_port_num(ah_attr); in rvt_check_ah() 27 u8 ah_flags = rdma_ah_get_ah_flags(ah_attr); in rvt_check_ah() 28 u8 static_rate = rdma_ah_get_static_rate(ah_attr); in rvt_check_ah() 40 rdma_ah_read_grh(ah_attr)->sgid_index >= port_attr.gid_tbl_len) in rvt_check_ah() 43 return rdi->driver_f.check_ah(ibdev, ah_attr); in rvt_check_ah() 65 if (rvt_check_ah(ibah->device, init_attr->ah_attr)) in rvt_create_ah() 77 rdma_copy_ah_attr(&ah->attr, init_attr->ah_attr); in rvt_create_ah() 81 init_attr->ah_attr, ah); in rvt_create_ah() 113 int rvt_modify_ah(struct ib_ah *ibah, struct rdma_ah_attr *ah_attr) in rvt_modify_ah() argument [all …]
|
| H A D | ah.h | 14 int rvt_modify_ah(struct ib_ah *ibah, struct rdma_ah_attr *ah_attr); 15 int rvt_query_ah(struct ib_ah *ibah, struct rdma_ah_attr *ah_attr);
|
| /linux/drivers/infiniband/hw/hfi1/ |
| H A D | ud.c | 37 struct rdma_ah_attr *ah_attr; in ud_loopback() local 66 ah_attr = rvt_get_swqe_ah_attr(swqe); in ud_loopback() 72 u8 sc5 = ibp->sl_to_sc[rdma_ah_get_sl(ah_attr)]; in ud_loopback() 75 slid = ppd->lid | (rdma_ah_get_path_bits(ah_attr) & in ud_loopback() 81 rdma_ah_get_sl(ah_attr), in ud_loopback() 83 slid, rdma_ah_get_dlid(ah_attr)); in ud_loopback() 143 if (rdma_ah_get_ah_flags(ah_attr) & IB_AH_GRH) { in ud_loopback() 145 struct ib_global_route grd = *(rdma_ah_read_grh(ah_attr)); in ud_loopback() 207 wc.slid = (ppd->lid | (rdma_ah_get_path_bits(ah_attr) & in ud_loopback() 212 wc.sl = rdma_ah_get_sl(ah_attr); in ud_loopback() [all …]
|
| H A D | ipoib_tx.c | 27 struct rdma_ah_attr *ah_attr; member 263 struct rdma_ah_attr *ah_attr = txp->ah_attr; in hfi1_ipoib_build_ib_tx_headers() local 285 if (rdma_ah_get_ah_flags(ah_attr) & IB_AH_GRH) { in hfi1_ipoib_build_ib_tx_headers() 290 rdma_ah_read_grh(ah_attr), in hfi1_ipoib_build_ib_tx_headers() 300 lrh0 |= (rdma_ah_get_sl(ah_attr) & 0xf) << 4; in hfi1_ipoib_build_ib_tx_headers() 303 dlid = opa_get_lid(rdma_ah_get_dlid(ah_attr), 9B); in hfi1_ipoib_build_ib_tx_headers() 310 lid |= rdma_ah_get_path_bits(ah_attr) & in hfi1_ipoib_build_ib_tx_headers() 591 txp.ah_attr = &ibah_to_rvtah(address)->attr; in hfi1_ipoib_send() 595 txp.flow.sc5 = txp.ibp->sl_to_sc[rdma_ah_get_sl(txp.ah_attr)]; in hfi1_ipoib_send()
|
| H A D | verbs.h | 374 u8 ah_to_sc(struct ib_device *ibdev, struct rdma_ah_attr *ah_attr);
|
| /linux/drivers/infiniband/hw/mthca/ |
| H A D | mthca_av.c | 155 struct rdma_ah_attr *ah_attr, in mthca_create_ah() argument 200 (rdma_ah_get_port_num(ah_attr) << 24)); in mthca_create_ah() 201 av->g_slid = rdma_ah_get_path_bits(ah_attr); in mthca_create_ah() 202 av->dlid = cpu_to_be16(rdma_ah_get_dlid(ah_attr)); in mthca_create_ah() 204 mthca_get_rate(dev, rdma_ah_get_static_rate(ah_attr), in mthca_create_ah() 205 rdma_ah_get_port_num(ah_attr)); in mthca_create_ah() 206 av->sl_tclass_flowlabel = cpu_to_be32(rdma_ah_get_sl(ah_attr) << 28); in mthca_create_ah() 207 if (rdma_ah_get_ah_flags(ah_attr) & IB_AH_GRH) { in mthca_create_ah() 208 const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); in mthca_create_ah() 211 av->gid_index = (rdma_ah_get_port_num(ah_attr) - 1) * in mthca_create_ah()
|
| H A D | mthca_mad.c | 79 struct rdma_ah_attr ah_attr; in update_sm_ah() local 85 memset(&ah_attr, 0, sizeof ah_attr); in update_sm_ah() 86 ah_attr.type = rdma_ah_find_type(&dev->ib_dev, port_num); in update_sm_ah() 87 rdma_ah_set_dlid(&ah_attr, lid); in update_sm_ah() 88 rdma_ah_set_sl(&ah_attr, sl); in update_sm_ah() 89 rdma_ah_set_port_num(&ah_attr, port_num); in update_sm_ah() 92 &ah_attr, 0); in update_sm_ah()
|
| H A D | mthca_qp.c | 398 struct rdma_ah_attr *ah_attr, in to_rdma_ah_attr() argument 403 memset(ah_attr, 0, sizeof(*ah_attr)); in to_rdma_ah_attr() 407 ah_attr->type = rdma_ah_find_type(&dev->ib_dev, port_num); in to_rdma_ah_attr() 408 rdma_ah_set_port_num(ah_attr, port_num); in to_rdma_ah_attr() 410 rdma_ah_set_dlid(ah_attr, be16_to_cpu(path->rlid)); in to_rdma_ah_attr() 411 rdma_ah_set_sl(ah_attr, be32_to_cpu(path->sl_tclass_flowlabel) >> 28); in to_rdma_ah_attr() 412 rdma_ah_set_path_bits(ah_attr, path->g_mylmc & 0x7f); in to_rdma_ah_attr() 413 rdma_ah_set_static_rate(ah_attr, in to_rdma_ah_attr() 420 rdma_ah_set_grh(ah_attr, NULL, in to_rdma_ah_attr() 426 rdma_ah_set_dgid_raw(ah_attr, path->rgid); in to_rdma_ah_attr() [all …]
|
| H A D | mthca_dev.h | 555 struct rdma_ah_attr *ah_attr,
|
| /linux/include/rdma/ |
| H A D | lag.h | 20 struct rdma_ah_attr *ah_attr,
|
| H A D | rdma_cm.h | 92 struct rdma_ah_attr ah_attr; member
|
| /linux/drivers/infiniband/hw/ocrdma/ |
| H A D | ocrdma_ah.h | 57 int ocrdma_query_ah(struct ib_ah *ah, struct rdma_ah_attr *ah_attr);
|
| H A D | ocrdma_ah.c | 168 struct rdma_ah_attr *attr = init_attr->ah_attr; in ocrdma_create_ah()
|
| H A D | ocrdma_hw.c | 2488 struct rdma_ah_attr *ah_attr = &attrs->ah_attr; in ocrdma_set_av_params() local 2499 if ((rdma_ah_get_ah_flags(ah_attr) & IB_AH_GRH) == 0) in ocrdma_set_av_params() 2501 grh = rdma_ah_read_grh(ah_attr); in ocrdma_set_av_params() 2508 cmd->params.rnt_rc_sl_fl |= (rdma_ah_get_sl(ah_attr) << in ocrdma_set_av_params() 2518 sgid_attr = ah_attr->grh.sgid_attr; in ocrdma_set_av_params() 2526 status = ocrdma_resolve_dmac(dev, ah_attr, &mac_addr[0]); in ocrdma_set_av_params()
|
| /linux/net/smc/ |
| H A D | smc_ib.c | 73 qp_attr.ah_attr.type = RDMA_AH_ATTR_TYPE_ROCE; in smc_ib_modify_qp_rtr() 74 rdma_ah_set_port_num(&qp_attr.ah_attr, lnk->ibport); in smc_ib_modify_qp_rtr() 77 rdma_ah_set_grh(&qp_attr.ah_attr, NULL, 0, lnk->sgid_index, hop_lim, 0); in smc_ib_modify_qp_rtr() 78 rdma_ah_set_dgid_raw(&qp_attr.ah_attr, lnk->peer_gid); in smc_ib_modify_qp_rtr() 80 memcpy(&qp_attr.ah_attr.roce.dmac, lnk->lgr->nexthop_mac, in smc_ib_modify_qp_rtr() 83 memcpy(&qp_attr.ah_attr.roce.dmac, lnk->peer_mac, in smc_ib_modify_qp_rtr()
|
| /linux/drivers/infiniband/hw/qedr/ |
| H A D | qedr_roce_cm.c | 384 struct rdma_ah_attr *ah_attr = &get_qedr_ah(ud_wr(swr)->ah)->attr; in qedr_gsi_build_header() local 385 const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); in qedr_gsi_build_header() 433 ether_addr_copy(udh->eth.dmac_h, ah_attr->roce.dmac); in qedr_gsi_build_header()
|
| /linux/include/uapi/rdma/ |
| H A D | rdma_user_cm.h | 216 struct ib_uverbs_ah_attr ah_attr; member
|