Lines Matching refs:func_cap
867 struct mlx4_func_cap *func_cap = NULL; in mlx4_slave_special_qp_cap() local
871 func_cap = kzalloc(sizeof(*func_cap), GFP_KERNEL); in mlx4_slave_special_qp_cap()
874 if (!func_cap || !caps->spec_qps) { in mlx4_slave_special_qp_cap()
881 err = mlx4_QUERY_FUNC_CAP(dev, i, func_cap); in mlx4_slave_special_qp_cap()
887 caps->spec_qps[i - 1] = func_cap->spec_qps; in mlx4_slave_special_qp_cap()
889 caps->phys_port_id[i] = func_cap->phys_port_id; in mlx4_slave_special_qp_cap()
903 kfree(func_cap); in mlx4_slave_special_qp_cap()
912 struct mlx4_func_cap *func_cap = NULL; in mlx4_slave_cap() local
916 func_cap = kzalloc(sizeof(*func_cap), GFP_KERNEL); in mlx4_slave_cap()
918 if (!hca_param || !func_cap || !dev_cap) { in mlx4_slave_cap()
981 err = mlx4_QUERY_FUNC_CAP(dev, 0, func_cap); in mlx4_slave_cap()
988 if ((func_cap->pf_context_behaviour | PF_CONTEXT_BEHAVIOUR_MASK) != in mlx4_slave_cap()
991 func_cap->pf_context_behaviour, in mlx4_slave_cap()
997 dev->caps.num_ports = func_cap->num_ports; in mlx4_slave_cap()
998 dev->quotas.qp = func_cap->qp_quota; in mlx4_slave_cap()
999 dev->quotas.srq = func_cap->srq_quota; in mlx4_slave_cap()
1000 dev->quotas.cq = func_cap->cq_quota; in mlx4_slave_cap()
1001 dev->quotas.mpt = func_cap->mpt_quota; in mlx4_slave_cap()
1002 dev->quotas.mtt = func_cap->mtt_quota; in mlx4_slave_cap()
1007 dev->caps.num_eqs = func_cap->max_eq; in mlx4_slave_cap()
1008 dev->caps.reserved_eqs = func_cap->reserved_eq; in mlx4_slave_cap()
1009 dev->caps.reserved_lkey = func_cap->reserved_lkey; in mlx4_slave_cap()
1077 if (func_cap->extra_flags & MLX4_QUERY_FUNC_FLAGS_BF_RES_QP && in mlx4_slave_cap()
1081 if (func_cap->extra_flags & MLX4_QUERY_FUNC_FLAGS_A0_RES_QP) in mlx4_slave_cap()
1089 kfree(func_cap); in mlx4_slave_cap()