/drivers/infiniband/hw/mlx4/ |
D | ah.c | 42 static struct ib_ah *create_ib_ah(struct ib_pd *pd, struct ib_ah_attr *ah_attr, in create_ib_ah() argument 47 ah->av.ib.port_pd = cpu_to_be32(to_mpd(pd)->pdn | (ah_attr->port_num << 24)); in create_ib_ah() 48 ah->av.ib.g_slid = ah_attr->src_path_bits; in create_ib_ah() 49 ah->av.ib.sl_tclass_flowlabel = cpu_to_be32(ah_attr->sl << 28); in create_ib_ah() 50 if (ah_attr->ah_flags & IB_AH_GRH) { in create_ib_ah() 52 ah->av.ib.gid_index = ah_attr->grh.sgid_index; in create_ib_ah() 53 ah->av.ib.hop_limit = ah_attr->grh.hop_limit; in create_ib_ah() 55 cpu_to_be32((ah_attr->grh.traffic_class << 20) | in create_ib_ah() 56 ah_attr->grh.flow_label); in create_ib_ah() 57 memcpy(ah->av.ib.dgid, ah_attr->grh.dgid.raw, 16); in create_ib_ah() [all …]
|
D | mad.c | 196 struct ib_ah_attr ah_attr; in update_sm_ah() local 202 memset(&ah_attr, 0, sizeof ah_attr); in update_sm_ah() 203 ah_attr.dlid = lid; in update_sm_ah() 204 ah_attr.sl = sl; in update_sm_ah() 205 ah_attr.port_num = port_num; in update_sm_ah() 208 &ah_attr); in update_sm_ah() 1273 struct ib_ah_attr *ah_attr) in fill_in_real_sgid_index() argument 1276 ah_attr->grh.sgid_index = slave; in fill_in_real_sgid_index() 1278 ah_attr->grh.sgid_index += get_slave_base_gid_ix(dev, slave, port); in fill_in_real_sgid_index() 1288 struct ib_ah_attr ah_attr; in mlx4_ib_multiplex_mad() local [all …]
|
D | mcg.c | 208 struct ib_ah_attr ah_attr; in send_mad_to_wire() local 216 mlx4_ib_query_ah(dev->sm_ah[ctx->port - 1], &ah_attr); in send_mad_to_wire() 220 &ah_attr, NULL, mad); in send_mad_to_wire() 229 struct ib_ah_attr ah_attr; in send_mad_to_slave() local 235 ib_query_ah(dev->sm_ah[ctx->port - 1], &ah_attr); in send_mad_to_slave() 242 wc.slid = ah_attr.dlid; /* opensm lid */ in send_mad_to_slave()
|
/drivers/infiniband/hw/ehca/ |
D | ehca_av.c | 88 struct ib_ah *ehca_create_ah(struct ib_pd *pd, struct ib_ah_attr *ah_attr) in ehca_create_ah() argument 98 pd, ah_attr); in ehca_create_ah() 102 av->av.sl = ah_attr->sl; in ehca_create_ah() 103 av->av.dlid = ah_attr->dlid; in ehca_create_ah() 104 av->av.slid_path_bits = ah_attr->src_path_bits; in ehca_create_ah() 108 if (ehca_calc_ipd(shca, ah_attr->port_num, in ehca_create_ah() 109 ah_attr->static_rate, &ipd)) { in ehca_create_ah() 117 av->av.lnh = ah_attr->ah_flags; in ehca_create_ah() 120 ah_attr->grh.traffic_class); in ehca_create_ah() 122 ah_attr->grh.flow_label); in ehca_create_ah() [all …]
|
D | ehca_qp.c | 1487 mqpcb->dlid = attr->ah_attr.dlid; in internal_modify_qp() 1489 mqpcb->source_path_bits = attr->ah_attr.src_path_bits; in internal_modify_qp() 1491 mqpcb->service_level = attr->ah_attr.sl; in internal_modify_qp() 1495 attr->ah_attr.static_rate, in internal_modify_qp() 1512 if (attr->ah_attr.ah_flags == IB_AH_GRH) { in internal_modify_qp() 1515 mqpcb->source_gid_idx = attr->ah_attr.grh.sgid_index; in internal_modify_qp() 1521 attr->ah_attr.grh.dgid.raw[cnt]; in internal_modify_qp() 1524 mqpcb->flow_label = attr->ah_attr.grh.flow_label; in internal_modify_qp() 1526 mqpcb->hop_limit = attr->ah_attr.grh.hop_limit; in internal_modify_qp() 1528 mqpcb->traffic_class = attr->ah_attr.grh.traffic_class; in internal_modify_qp() [all …]
|
D | ehca_iverbs.h | 69 struct ib_ah *ehca_create_ah(struct ib_pd *pd, struct ib_ah_attr *ah_attr); 71 int ehca_modify_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr); 73 int ehca_query_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr);
|
/drivers/infiniband/hw/mlx5/ |
D | ah.c | 35 struct ib_ah *create_ib_ah(struct ib_ah_attr *ah_attr, in create_ib_ah() argument 38 if (ah_attr->ah_flags & IB_AH_GRH) { in create_ib_ah() 39 memcpy(ah->av.rgid, &ah_attr->grh.dgid, 16); in create_ib_ah() 40 ah->av.grh_gid_fl = cpu_to_be32(ah_attr->grh.flow_label | in create_ib_ah() 42 ah_attr->grh.sgid_index << 20); in create_ib_ah() 43 ah->av.hop_limit = ah_attr->grh.hop_limit; in create_ib_ah() 44 ah->av.tclass = ah_attr->grh.traffic_class; in create_ib_ah() 47 ah->av.rlid = cpu_to_be16(ah_attr->dlid); in create_ib_ah() 48 ah->av.fl_mlid = ah_attr->src_path_bits & 0x7f; in create_ib_ah() 49 ah->av.stat_rate_sl = (ah_attr->static_rate << 4) | (ah_attr->sl & 0xf); in create_ib_ah() [all …]
|
D | mlx5_ib.h | 466 struct ib_ah *create_ib_ah(struct ib_ah_attr *ah_attr, 468 struct ib_ah *mlx5_ib_create_ah(struct ib_pd *pd, struct ib_ah_attr *ah_attr); 469 int mlx5_ib_query_ah(struct ib_ah *ibah, struct ib_ah_attr *ah_attr);
|
/drivers/infiniband/hw/qib/ |
D | qib_ud.c | 54 struct ib_ah_attr *ah_attr; in qib_ud_loopback() local 79 ah_attr = &to_iah(swqe->wr.wr.ud.ah)->attr; in qib_ud_loopback() 90 lid = ppd->lid | (ah_attr->src_path_bits & in qib_ud_loopback() 93 ah_attr->sl, in qib_ud_loopback() 96 cpu_to_be16(ah_attr->dlid)); in qib_ud_loopback() 114 lid = ppd->lid | (ah_attr->src_path_bits & in qib_ud_loopback() 117 ah_attr->sl, in qib_ud_loopback() 120 cpu_to_be16(ah_attr->dlid)); in qib_ud_loopback() 166 if (ah_attr->ah_flags & IB_AH_GRH) { in qib_ud_loopback() 167 qib_copy_sge(&qp->r_sge, &ah_attr->grh, in qib_ud_loopback() [all …]
|
D | qib_verbs.c | 1788 int qib_check_ah(struct ib_device *ibdev, struct ib_ah_attr *ah_attr) in qib_check_ah() argument 1791 if (ah_attr->dlid >= QIB_MULTICAST_LID_BASE && in qib_check_ah() 1792 ah_attr->dlid != QIB_PERMISSIVE_LID && in qib_check_ah() 1793 !(ah_attr->ah_flags & IB_AH_GRH)) in qib_check_ah() 1795 if ((ah_attr->ah_flags & IB_AH_GRH) && in qib_check_ah() 1796 ah_attr->grh.sgid_index >= QIB_GUIDS_PER_PORT) in qib_check_ah() 1798 if (ah_attr->dlid == 0) in qib_check_ah() 1800 if (ah_attr->port_num < 1 || in qib_check_ah() 1801 ah_attr->port_num > ibdev->phys_port_cnt) in qib_check_ah() 1803 if (ah_attr->static_rate != IB_RATE_PORT_CURRENT && in qib_check_ah() [all …]
|
D | qib_qp.c | 593 if (attr->ah_attr.dlid >= QIB_MULTICAST_LID_BASE) in qib_modify_qp() 595 if (qib_check_ah(qp->ibqp.device, &attr->ah_attr)) in qib_modify_qp() 773 qp->remote_ah_attr = attr->ah_attr; in qib_modify_qp() 774 qp->s_srate = attr->ah_attr.static_rate; in qib_modify_qp() 874 attr->ah_attr = qp->remote_ah_attr; in qib_query_qp()
|
/drivers/infiniband/hw/mthca/ |
D | mthca_av.c | 155 struct ib_ah_attr *ah_attr, in mthca_create_ah() argument 201 av->port_pd = cpu_to_be32(pd->pd_num | (ah_attr->port_num << 24)); in mthca_create_ah() 202 av->g_slid = ah_attr->src_path_bits; in mthca_create_ah() 203 av->dlid = cpu_to_be16(ah_attr->dlid); in mthca_create_ah() 205 mthca_get_rate(dev, ah_attr->static_rate, ah_attr->port_num); in mthca_create_ah() 206 av->sl_tclass_flowlabel = cpu_to_be32(ah_attr->sl << 28); in mthca_create_ah() 207 if (ah_attr->ah_flags & IB_AH_GRH) { in mthca_create_ah() 209 av->gid_index = (ah_attr->port_num - 1) * dev->limits.gid_table_len + in mthca_create_ah() 210 ah_attr->grh.sgid_index; in mthca_create_ah() 211 av->hop_limit = ah_attr->grh.hop_limit; in mthca_create_ah() [all …]
|
D | mthca_mad.c | 78 struct ib_ah_attr ah_attr; in update_sm_ah() local 84 memset(&ah_attr, 0, sizeof ah_attr); in update_sm_ah() 85 ah_attr.dlid = lid; in update_sm_ah() 86 ah_attr.sl = sl; in update_sm_ah() 87 ah_attr.port_num = port_num; in update_sm_ah() 90 &ah_attr); in update_sm_ah()
|
/drivers/infiniband/hw/ipath/ |
D | ipath_ud.c | 54 struct ib_ah_attr *ah_attr; in ipath_ud_loopback() local 178 ah_attr = &to_iah(swqe->wr.wr.ud.ah)->attr; in ipath_ud_loopback() 179 if (ah_attr->ah_flags & IB_AH_GRH) { in ipath_ud_loopback() 180 ipath_copy_sge(&rsge, &ah_attr->grh, sizeof(struct ib_grh)); in ipath_ud_loopback() 220 (ah_attr->src_path_bits & in ipath_ud_loopback() 222 wc.sl = ah_attr->sl; in ipath_ud_loopback() 224 ah_attr->dlid & ((1 << dev->dd->ipath_lmc) - 1); in ipath_ud_loopback() 245 struct ib_ah_attr *ah_attr; in ipath_make_ud_req() local 283 ah_attr = &to_iah(wqe->wr.wr.ud.ah)->attr; in ipath_make_ud_req() 284 if (ah_attr->dlid >= IPATH_MULTICAST_LID_BASE) { in ipath_make_ud_req() [all …]
|
D | ipath_qp.c | 470 if (attr->ah_attr.dlid == 0 || in ipath_modify_qp() 471 attr->ah_attr.dlid >= IPATH_MULTICAST_LID_BASE) in ipath_modify_qp() 474 if ((attr->ah_attr.ah_flags & IB_AH_GRH) && in ipath_modify_qp() 475 (attr->ah_attr.grh.sgid_index > 1)) in ipath_modify_qp() 568 qp->remote_ah_attr = attr->ah_attr; in ipath_modify_qp() 569 qp->s_dmult = ipath_ib_rate_to_mult(attr->ah_attr.static_rate); in ipath_modify_qp() 640 attr->ah_attr = qp->remote_ah_attr; in ipath_query_qp()
|
D | ipath_verbs.c | 1763 struct ib_ah_attr *ah_attr) in ipath_create_ah() argument 1771 if (ah_attr->dlid >= IPATH_MULTICAST_LID_BASE && in ipath_create_ah() 1772 ah_attr->dlid != IPATH_PERMISSIVE_LID && in ipath_create_ah() 1773 !(ah_attr->ah_flags & IB_AH_GRH)) { in ipath_create_ah() 1778 if (ah_attr->dlid == 0) { in ipath_create_ah() 1783 if (ah_attr->port_num < 1 || in ipath_create_ah() 1784 ah_attr->port_num > pd->device->phys_port_cnt) { in ipath_create_ah() 1807 ah->attr = *ah_attr; in ipath_create_ah() 1808 ah->attr.static_rate = ipath_ib_rate_to_mult(ah_attr->static_rate); in ipath_create_ah() 1837 static int ipath_query_ah(struct ib_ah *ibah, struct ib_ah_attr *ah_attr) in ipath_query_ah() argument [all …]
|
/drivers/infiniband/core/ |
D | verbs.c | 178 struct ib_ah *ib_create_ah(struct ib_pd *pd, struct ib_ah_attr *ah_attr) in ib_create_ah() argument 182 ah = pd->device->create_ah(pd, ah_attr); in ib_create_ah() 196 struct ib_grh *grh, struct ib_ah_attr *ah_attr) in ib_init_ah_from_wc() argument 204 memset(ah_attr, 0, sizeof *ah_attr); in ib_init_ah_from_wc() 211 memcpy(ah_attr->dmac, wc->smac, ETH_ALEN); in ib_init_ah_from_wc() 212 ah_attr->vlan_id = wc->vlan_id; in ib_init_ah_from_wc() 215 ah_attr->dmac, &ah_attr->vlan_id); in ib_init_ah_from_wc() 220 ah_attr->vlan_id = 0xffff; in ib_init_ah_from_wc() 223 ah_attr->dlid = wc->slid; in ib_init_ah_from_wc() 224 ah_attr->sl = wc->sl; in ib_init_ah_from_wc() [all …]
|
D | sa_query.c | 398 struct ib_ah_attr ah_attr; in update_sm_ah() local 419 memset(&ah_attr, 0, sizeof ah_attr); in update_sm_ah() 420 ah_attr.dlid = port_attr.sm_lid; in update_sm_ah() 421 ah_attr.sl = port_attr.sm_sl; in update_sm_ah() 422 ah_attr.port_num = port->port_num; in update_sm_ah() 424 new_ah->ah = ib_create_ah(port->agent->qp->pd, &ah_attr); in update_sm_ah() 529 struct ib_sa_path_rec *rec, struct ib_ah_attr *ah_attr) in ib_init_ah_from_path() argument 535 memset(ah_attr, 0, sizeof *ah_attr); in ib_init_ah_from_path() 536 ah_attr->dlid = be16_to_cpu(rec->dlid); in ib_init_ah_from_path() 537 ah_attr->sl = rec->sl; in ib_init_ah_from_path() [all …]
|
D | user_mad.c | 238 struct ib_ah_attr ah_attr; in recv_handler() local 242 &ah_attr); in recv_handler() 244 packet->mad.hdr.gid_index = ah_attr.grh.sgid_index; in recv_handler() 245 packet->mad.hdr.hop_limit = ah_attr.grh.hop_limit; in recv_handler() 246 packet->mad.hdr.traffic_class = ah_attr.grh.traffic_class; in recv_handler() 247 memcpy(packet->mad.hdr.gid, &ah_attr.grh.dgid, 16); in recv_handler() 248 packet->mad.hdr.flow_label = cpu_to_be32(ah_attr.grh.flow_label); in recv_handler() 449 struct ib_ah_attr ah_attr; in ib_umad_write() local 487 memset(&ah_attr, 0, sizeof ah_attr); in ib_umad_write() 488 ah_attr.dlid = be16_to_cpu(packet->mad.hdr.lid); in ib_umad_write() [all …]
|
D | multicast.c | 721 struct ib_ah_attr *ah_attr) in ib_init_ah_from_mcmember() argument 731 memset(ah_attr, 0, sizeof *ah_attr); in ib_init_ah_from_mcmember() 732 ah_attr->dlid = be16_to_cpu(rec->mlid); in ib_init_ah_from_mcmember() 733 ah_attr->sl = rec->sl; in ib_init_ah_from_mcmember() 734 ah_attr->port_num = port_num; in ib_init_ah_from_mcmember() 735 ah_attr->static_rate = rec->rate; in ib_init_ah_from_mcmember() 737 ah_attr->ah_flags = IB_AH_GRH; in ib_init_ah_from_mcmember() 738 ah_attr->grh.dgid = rec->mgid; in ib_init_ah_from_mcmember() 740 ah_attr->grh.sgid_index = (u8) gid_index; in ib_init_ah_from_mcmember() 741 ah_attr->grh.flow_label = be32_to_cpu(rec->flow_label); in ib_init_ah_from_mcmember() [all …]
|
D | uverbs_cmd.c | 1929 memcpy(resp.dest.dgid, attr->ah_attr.grh.dgid.raw, 16); in ib_uverbs_query_qp() 1930 resp.dest.flow_label = attr->ah_attr.grh.flow_label; in ib_uverbs_query_qp() 1931 resp.dest.sgid_index = attr->ah_attr.grh.sgid_index; in ib_uverbs_query_qp() 1932 resp.dest.hop_limit = attr->ah_attr.grh.hop_limit; in ib_uverbs_query_qp() 1933 resp.dest.traffic_class = attr->ah_attr.grh.traffic_class; in ib_uverbs_query_qp() 1934 resp.dest.dlid = attr->ah_attr.dlid; in ib_uverbs_query_qp() 1935 resp.dest.sl = attr->ah_attr.sl; in ib_uverbs_query_qp() 1936 resp.dest.src_path_bits = attr->ah_attr.src_path_bits; in ib_uverbs_query_qp() 1937 resp.dest.static_rate = attr->ah_attr.static_rate; in ib_uverbs_query_qp() 1938 resp.dest.is_global = !!(attr->ah_attr.ah_flags & IB_AH_GRH); in ib_uverbs_query_qp() [all …]
|
D | uverbs_marshall.c | 74 ib_copy_ah_attr_to_user(&dst->ah_attr, &src->ah_attr); in ib_copy_qp_attr_to_user()
|
D | cm.c | 178 struct ib_ah_attr ah_attr; member 263 ah = ib_create_ah(mad_agent->qp->pd, &cm_id_priv->av.ah_attr); in cm_alloc_msg() 349 grh, &av->ah_attr); in cm_init_av_for_response() 380 &av->ah_attr); in cm_init_av_by_path() 1569 memcpy(work->path[0].dmac, cm_id_priv->av.ah_attr.dmac, ETH_ALEN); in cm_req_handler() 1570 work->path[0].vlan_id = cm_id_priv->av.ah_attr.vlan_id; in cm_req_handler() 3519 qp_attr->ah_attr = cm_id_priv->av.ah_attr; in cm_init_qp_rtr_attr() 3524 if (cm_id_priv->av.ah_attr.vlan_id != 0xffff) { in cm_init_qp_rtr_attr() 3525 qp_attr->vlan_id = cm_id_priv->av.ah_attr.vlan_id; in cm_init_qp_rtr_attr() 3534 if (cm_id_priv->alt_av.ah_attr.vlan_id != 0xffff) { in cm_init_qp_rtr_attr() [all …]
|
/drivers/infiniband/hw/ocrdma/ |
D | ocrdma.h | 477 struct ib_ah_attr *ah_attr, u8 *mac_addr) in ocrdma_resolve_dmac() argument 481 memcpy(&in6, ah_attr->grh.dgid.raw, sizeof(in6)); in ocrdma_resolve_dmac() 485 memcpy(mac_addr, ah_attr->dmac, ETH_ALEN); in ocrdma_resolve_dmac()
|
/drivers/infiniband/hw/usnic/ |
D | usnic_ib_verbs.h | 61 struct ib_ah_attr *ah_attr);
|