Lines Matching refs:qpc
707 struct mlx4_qp_context *qpc = inbox->buf + 8; in update_vport_qp_param() local
713 port = (qpc->pri_path.sched_queue & 0x40) ? 2 : 1; in update_vport_qp_param()
716 qp_type = (be32_to_cpu(qpc->flags) >> 16) & 0xff; in update_vport_qp_param()
732 qpc->param3 &= ~cpu_to_be32(MLX4_STRIP_VLAN); in update_vport_qp_param()
744 qpc->pri_path.vlan_control = in update_vport_qp_param()
752 qpc->pri_path.vlan_control = in update_vport_qp_param()
757 qpc->pri_path.vlan_control = in update_vport_qp_param()
762 qpc->pri_path.fvl_rx |= MLX4_FVL_RX_FORCE_ETH_VLAN; in update_vport_qp_param()
763 qpc->pri_path.vlan_index = vp_oper->vlan_idx; in update_vport_qp_param()
764 qpc->pri_path.fl |= MLX4_FL_CV | MLX4_FL_ETH_HIDE_CQE_VLAN; in update_vport_qp_param()
765 qpc->pri_path.feup |= MLX4_FEUP_FORCE_ETH_UP | MLX4_FVL_FORCE_ETH_VLAN; in update_vport_qp_param()
766 qpc->pri_path.sched_queue &= 0xC7; in update_vport_qp_param()
767 qpc->pri_path.sched_queue |= (vp_oper->state.default_qos) << 3; in update_vport_qp_param()
768 qpc->qos_vport = vp_oper->state.qos_vport; in update_vport_qp_param()
771 qpc->pri_path.feup |= MLX4_FSM_FORCE_ETH_SRC_MAC; in update_vport_qp_param()
772 qpc->pri_path.grh_mylmc = (0x80 & qpc->pri_path.grh_mylmc) + vp_oper->mac_idx; in update_vport_qp_param()
2465 static int qp_get_mtt_addr(struct mlx4_qp_context *qpc) in qp_get_mtt_addr() argument
2467 return be32_to_cpu(qpc->mtt_base_addr_l) & 0xfffffff8; in qp_get_mtt_addr()
2475 static int qp_get_mtt_size(struct mlx4_qp_context *qpc) in qp_get_mtt_size() argument
2477 int page_shift = (qpc->log_page_size & 0x3f) + 12; in qp_get_mtt_size()
2478 int log_sq_size = (qpc->sq_size_stride >> 3) & 0xf; in qp_get_mtt_size()
2479 int log_sq_sride = qpc->sq_size_stride & 7; in qp_get_mtt_size()
2480 int log_rq_size = (qpc->rq_size_stride >> 3) & 0xf; in qp_get_mtt_size()
2481 int log_rq_stride = qpc->rq_size_stride & 7; in qp_get_mtt_size()
2482 int srq = (be32_to_cpu(qpc->srqn) >> 24) & 1; in qp_get_mtt_size()
2483 int rss = (be32_to_cpu(qpc->flags) >> 13) & 1; in qp_get_mtt_size()
2484 u32 ts = (be32_to_cpu(qpc->flags) >> 16) & 0xff; in qp_get_mtt_size()
2490 int page_offset = (be32_to_cpu(qpc->params2) >> 6) & 0x3f; in qp_get_mtt_size()
2678 static int qp_get_rcqn(struct mlx4_qp_context *qpc) in qp_get_rcqn() argument
2680 return be32_to_cpu(qpc->cqn_recv) & 0xffffff; in qp_get_rcqn()
2683 static int qp_get_scqn(struct mlx4_qp_context *qpc) in qp_get_scqn() argument
2685 return be32_to_cpu(qpc->cqn_send) & 0xffffff; in qp_get_scqn()
2688 static u32 qp_get_srqn(struct mlx4_qp_context *qpc) in qp_get_srqn() argument
2690 return be32_to_cpu(qpc->srqn) & 0x1ffffff; in qp_get_srqn()
2716 struct mlx4_qp_context *qpc = inbox->buf + 8; in mlx4_RST2INIT_QP_wrapper() local
2717 int mtt_base = qp_get_mtt_addr(qpc) / dev->caps.mtt_entry_sz; in mlx4_RST2INIT_QP_wrapper()
2718 int mtt_size = qp_get_mtt_size(qpc); in mlx4_RST2INIT_QP_wrapper()
2721 int rcqn = qp_get_rcqn(qpc); in mlx4_RST2INIT_QP_wrapper()
2722 int scqn = qp_get_scqn(qpc); in mlx4_RST2INIT_QP_wrapper()
2723 u32 srqn = qp_get_srqn(qpc) & 0xffffff; in mlx4_RST2INIT_QP_wrapper()
2724 int use_srq = (qp_get_srqn(qpc) >> 24) & 1; in mlx4_RST2INIT_QP_wrapper()
2726 int local_qpn = be32_to_cpu(qpc->local_qpn) & 0xffffff; in mlx4_RST2INIT_QP_wrapper()
2739 qp->qpc_flags = be32_to_cpu(qpc->flags); in mlx4_RST2INIT_QP_wrapper()
2766 adjust_proxy_tun_qkey(dev, vhcr, qpc); in mlx4_RST2INIT_QP_wrapper()
3515 struct mlx4_qp_context *qpc, in adjust_qp_sched_queue() argument
3521 dev, slave, (qpc->pri_path.sched_queue >> 6 & 1) + 1) - 1; in adjust_qp_sched_queue()
3526 pri_sched_queue = (qpc->pri_path.sched_queue & ~(1 << 6)) | in adjust_qp_sched_queue()
3531 qpc->pri_path.sched_queue = pri_sched_queue; in adjust_qp_sched_queue()
3536 dev, slave, (qpc->alt_path.sched_queue >> 6 & 1) in adjust_qp_sched_queue()
3540 qpc->alt_path.sched_queue = in adjust_qp_sched_queue()
3541 (qpc->alt_path.sched_queue & ~(1 << 6)) | in adjust_qp_sched_queue()
3548 struct mlx4_qp_context *qpc, in roce_verify_mac() argument
3553 u32 ts = (be32_to_cpu(qpc->flags) >> 16) & 0xff; in roce_verify_mac()
3559 smac_ix = qpc->pri_path.grh_mylmc & 0x7f; in roce_verify_mac()
3573 struct mlx4_qp_context *qpc = inbox->buf + 8; in mlx4_INIT2RTR_QP_wrapper() local
3577 __be32 orig_param3 = qpc->param3; in mlx4_INIT2RTR_QP_wrapper()
3578 u8 orig_vlan_control = qpc->pri_path.vlan_control; in mlx4_INIT2RTR_QP_wrapper()
3579 u8 orig_fvl_rx = qpc->pri_path.fvl_rx; in mlx4_INIT2RTR_QP_wrapper()
3580 u8 orig_pri_path_fl = qpc->pri_path.fl; in mlx4_INIT2RTR_QP_wrapper()
3581 u8 orig_vlan_index = qpc->pri_path.vlan_index; in mlx4_INIT2RTR_QP_wrapper()
3582 u8 orig_feup = qpc->pri_path.feup; in mlx4_INIT2RTR_QP_wrapper()
3584 err = adjust_qp_sched_queue(dev, slave, qpc, inbox); in mlx4_INIT2RTR_QP_wrapper()
3591 if (roce_verify_mac(dev, slave, qpc, inbox)) in mlx4_INIT2RTR_QP_wrapper()
3596 adjust_proxy_tun_qkey(dev, vhcr, qpc); in mlx4_INIT2RTR_QP_wrapper()
3597 orig_sched_queue = qpc->pri_path.sched_queue; in mlx4_INIT2RTR_QP_wrapper()