Lines Matching refs:gid
553 u8 *gid, enum mlx4_protocol prot, in find_entry() argument
569 memcpy(mgid, gid, 16); in find_entry()
577 mlx4_dbg(dev, "Hash for %pI6 is %04x\n", gid, *hash); in find_entry()
595 if (!memcmp(mgm->gid, gid, 16) && in find_entry()
607 int mlx4_qp_attach_common(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], in mlx4_qp_attach_common()
620 u8 port = gid[5]; in mlx4_qp_attach_common()
629 err = find_entry(dev, port, gid, prot, steer, in mlx4_qp_attach_common()
637 memcpy(mgm->gid, gid, 16); in mlx4_qp_attach_common()
651 memcpy(mgm->gid, gid, 16); in mlx4_qp_attach_common()
716 int mlx4_qp_detach_common(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], in mlx4_qp_detach_common()
727 u8 port = gid[5]; in mlx4_qp_detach_common()
737 err = find_entry(dev, port, gid, prot, steer, in mlx4_qp_detach_common()
743 mlx4_err(dev, "MGID %pI6 not found\n", gid); in mlx4_qp_detach_common()
787 memset(mgm->gid, 0, 16); in mlx4_qp_detach_common()
830 int mlx4_multicast_attach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], in mlx4_multicast_attach()
835 steer = (is_valid_ether_addr(&gid[10])) ? MLX4_UC_STEER : MLX4_MC_STEER; in mlx4_multicast_attach()
841 gid[7] |= (steer << 1); in mlx4_multicast_attach()
843 return mlx4_qp_attach_common(dev, qp, gid, in mlx4_multicast_attach()
849 int mlx4_multicast_detach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], in mlx4_multicast_detach()
854 steer = (is_valid_ether_addr(&gid[10])) ? MLX4_UC_STEER : MLX4_MC_STEER; in mlx4_multicast_detach()
860 gid[7] |= (steer << 1); in mlx4_multicast_detach()
863 return mlx4_qp_detach_common(dev, qp, gid, prot, steer); in mlx4_multicast_detach()