Lines Matching refs:qp
219 mgm->qp[members_count++] = cpu_to_be32(pqp->qpn & MGM_QPN_MASK); in new_steering_entry()
356 u32 qpn = be32_to_cpu(mgm->qp[i]) & MGM_QPN_MASK; in promisc_steering_entry()
478 if ((be32_to_cpu(mgm->qp[i]) & in add_promisc_qp()
502 mgm->qp[members_count++] = in add_promisc_qp()
526 mgm->qp[members_count++] = cpu_to_be32(dqp->qpn & MGM_QPN_MASK); in add_promisc_qp()
592 mgm->qp[members_count++] = cpu_to_be32(dqp->qpn & MGM_QPN_MASK); in remove_promisc_qp()
637 if ((be32_to_cpu(mgm->qp[i]) & in remove_promisc_qp()
653 mgm->qp[loc] = mgm->qp[members_count - 1]; in remove_promisc_qp()
654 mgm->qp[members_count - 1] = 0; in remove_promisc_qp()
1097 int mlx4_qp_attach_common(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], in mlx4_qp_attach_common() argument
1152 if ((be32_to_cpu(mgm->qp[i]) & MGM_QPN_MASK) == qp->qpn) { in mlx4_qp_attach_common()
1153 mlx4_dbg(dev, "QP %06x already a member of MGM\n", qp->qpn); in mlx4_qp_attach_common()
1159 mgm->qp[members_count++] = cpu_to_be32((qp->qpn & MGM_QPN_MASK) | in mlx4_qp_attach_common()
1162 mgm->qp[members_count++] = cpu_to_be32(qp->qpn & MGM_QPN_MASK); in mlx4_qp_attach_common()
1187 new_steering_entry(dev, port, steer, index, qp->qpn); in mlx4_qp_attach_common()
1190 index, qp->qpn); in mlx4_qp_attach_common()
1206 int mlx4_qp_detach_common(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], in mlx4_qp_detach_common() argument
1241 check_duplicate_entry(dev, port, steer, index, qp->qpn) && in mlx4_qp_detach_common()
1242 !promisc_steering_entry(dev, port, steer, index, qp->qpn, NULL)) in mlx4_qp_detach_common()
1247 if ((be32_to_cpu(mgm->qp[i]) & MGM_QPN_MASK) == qp->qpn) { in mlx4_qp_detach_common()
1253 mlx4_err(dev, "QP %06x not found in MGM\n", qp->qpn); in mlx4_qp_detach_common()
1259 mgm->qp[loc] = mgm->qp[members_count - 1]; in mlx4_qp_detach_common()
1260 mgm->qp[members_count - 1] = 0; in mlx4_qp_detach_common()
1265 index, qp->qpn); in mlx4_qp_detach_common()
1327 static int mlx4_QP_ATTACH(struct mlx4_dev *dev, struct mlx4_qp *qp, in mlx4_QP_ATTACH() argument
1343 qpn = qp->qpn; in mlx4_QP_ATTACH()
1359 int mlx4_trans_to_dmfs_attach(struct mlx4_dev *dev, struct mlx4_qp *qp, in mlx4_trans_to_dmfs_attach() argument
1376 rule.qpn = qp->qpn; in mlx4_trans_to_dmfs_attach()
1399 int mlx4_multicast_attach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], in mlx4_multicast_attach() argument
1413 return mlx4_QP_ATTACH(dev, qp, gid, 1, in mlx4_multicast_attach()
1415 return mlx4_qp_attach_common(dev, qp, gid, in mlx4_multicast_attach()
1420 return mlx4_trans_to_dmfs_attach(dev, qp, gid, port, in mlx4_multicast_attach()
1429 int mlx4_multicast_detach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], in mlx4_multicast_detach() argument
1442 return mlx4_QP_ATTACH(dev, qp, gid, 0, 0, prot); in mlx4_multicast_detach()
1444 return mlx4_qp_detach_common(dev, qp, gid, prot, in mlx4_multicast_detach()
1515 struct mlx4_qp *qp, u8 gid[16], in mlx4_unicast_attach() argument
1522 return mlx4_QP_ATTACH(dev, qp, gid, 1, in mlx4_unicast_attach()
1525 return mlx4_qp_attach_common(dev, qp, gid, block_mcast_loopback, in mlx4_unicast_attach()
1530 int mlx4_unicast_detach(struct mlx4_dev *dev, struct mlx4_qp *qp, in mlx4_unicast_detach() argument
1537 return mlx4_QP_ATTACH(dev, qp, gid, 0, 0, prot); in mlx4_unicast_detach()
1539 return mlx4_qp_detach_common(dev, qp, gid, prot, MLX4_UC_STEER); in mlx4_unicast_detach()