Lines Matching refs:req
53 first_tlv->resp_msg_offset = sizeof(bp->vf2pf_mbox->req); in bnx2x_vfpf_prep()
224 struct vfpf_acquire_tlv *req = &bp->vf2pf_mbox->req.acquire; in bnx2x_vfpf_acquire() local
232 bnx2x_vfpf_prep(bp, &req->first_tlv, CHANNEL_TLV_ACQUIRE, sizeof(*req)); in bnx2x_vfpf_acquire()
239 req->vfdev_info.vf_id = vf_id; in bnx2x_vfpf_acquire()
240 req->vfdev_info.vf_os = 0; in bnx2x_vfpf_acquire()
241 req->vfdev_info.fp_hsi_ver = ETH_FP_HSI_VERSION; in bnx2x_vfpf_acquire()
243 req->resc_request.num_rxqs = rx_count; in bnx2x_vfpf_acquire()
244 req->resc_request.num_txqs = tx_count; in bnx2x_vfpf_acquire()
245 req->resc_request.num_sbs = bp->igu_sb_cnt; in bnx2x_vfpf_acquire()
246 req->resc_request.num_mac_filters = VF_ACQUIRE_MAC_FILTERS; in bnx2x_vfpf_acquire()
247 req->resc_request.num_mc_filters = VF_ACQUIRE_MC_FILTERS; in bnx2x_vfpf_acquire()
250 req->bulletin_addr = bp->pf2vf_bulletin_mapping; in bnx2x_vfpf_acquire()
253 bnx2x_add_tlv(bp, req, req->first_tlv.tl.length, in bnx2x_vfpf_acquire()
257 req->vfdev_info.caps |= VF_CAP_SUPPORT_EXT_BULLETIN; in bnx2x_vfpf_acquire()
260 bnx2x_add_tlv(bp, req, in bnx2x_vfpf_acquire()
261 req->first_tlv.tl.length + sizeof(struct channel_tlv), in bnx2x_vfpf_acquire()
266 bnx2x_dp_tlv_list(bp, req); in bnx2x_vfpf_acquire()
298 req->resc_request.num_txqs = in bnx2x_vfpf_acquire()
299 min(req->resc_request.num_txqs, in bnx2x_vfpf_acquire()
301 req->resc_request.num_rxqs = in bnx2x_vfpf_acquire()
302 min(req->resc_request.num_rxqs, in bnx2x_vfpf_acquire()
304 req->resc_request.num_sbs = in bnx2x_vfpf_acquire()
305 min(req->resc_request.num_sbs, in bnx2x_vfpf_acquire()
307 req->resc_request.num_mac_filters = in bnx2x_vfpf_acquire()
308 min(req->resc_request.num_mac_filters, in bnx2x_vfpf_acquire()
310 req->resc_request.num_vlan_filters = in bnx2x_vfpf_acquire()
311 min(req->resc_request.num_vlan_filters, in bnx2x_vfpf_acquire()
313 req->resc_request.num_mc_filters = in bnx2x_vfpf_acquire()
314 min(req->resc_request.num_mc_filters, in bnx2x_vfpf_acquire()
355 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_acquire()
385 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_acquire()
391 struct vfpf_release_tlv *req = &bp->vf2pf_mbox->req.release; in bnx2x_vfpf_release() local
396 bnx2x_vfpf_prep(bp, &req->first_tlv, CHANNEL_TLV_RELEASE, sizeof(*req)); in bnx2x_vfpf_release()
403 req->vf_id = vf_id; in bnx2x_vfpf_release()
406 bnx2x_add_tlv(bp, req, req->first_tlv.tl.length, CHANNEL_TLV_LIST_END, in bnx2x_vfpf_release()
410 bnx2x_dp_tlv_list(bp, req); in bnx2x_vfpf_release()
430 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_release()
438 struct vfpf_init_tlv *req = &bp->vf2pf_mbox->req.init; in bnx2x_vfpf_init() local
443 bnx2x_vfpf_prep(bp, &req->first_tlv, CHANNEL_TLV_INIT, sizeof(*req)); in bnx2x_vfpf_init()
447 req->sb_addr[i] = (dma_addr_t)bnx2x_fp(bp, i, in bnx2x_vfpf_init()
451 req->stats_addr = bp->fw_stats_data_mapping + in bnx2x_vfpf_init()
454 req->stats_stride = sizeof(struct per_queue_stats); in bnx2x_vfpf_init()
457 bnx2x_add_tlv(bp, req, req->first_tlv.tl.length, CHANNEL_TLV_LIST_END, in bnx2x_vfpf_init()
461 bnx2x_dp_tlv_list(bp, req); in bnx2x_vfpf_init()
476 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_init()
484 struct vfpf_close_tlv *req = &bp->vf2pf_mbox->req.close; in bnx2x_vfpf_close_vf() local
503 bnx2x_vfpf_prep(bp, &req->first_tlv, CHANNEL_TLV_CLOSE, sizeof(*req)); in bnx2x_vfpf_close_vf()
505 req->vf_id = vf_id; in bnx2x_vfpf_close_vf()
508 bnx2x_add_tlv(bp, req, req->first_tlv.tl.length, CHANNEL_TLV_LIST_END, in bnx2x_vfpf_close_vf()
512 bnx2x_dp_tlv_list(bp, req); in bnx2x_vfpf_close_vf()
523 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_close_vf()
587 struct vfpf_setup_q_tlv *req = &bp->vf2pf_mbox->req.setup_q; in bnx2x_vfpf_setup_q() local
594 bnx2x_vfpf_prep(bp, &req->first_tlv, CHANNEL_TLV_SETUP_Q, sizeof(*req)); in bnx2x_vfpf_setup_q()
614 req->vf_qid = fp_idx; in bnx2x_vfpf_setup_q()
615 req->param_valid = VFPF_RXQ_VALID | VFPF_TXQ_VALID; in bnx2x_vfpf_setup_q()
618 req->rxq.rcq_addr = fp->rx_comp_mapping; in bnx2x_vfpf_setup_q()
619 req->rxq.rcq_np_addr = fp->rx_comp_mapping + BCM_PAGE_SIZE; in bnx2x_vfpf_setup_q()
620 req->rxq.rxq_addr = fp->rx_desc_mapping; in bnx2x_vfpf_setup_q()
621 req->rxq.sge_addr = fp->rx_sge_mapping; in bnx2x_vfpf_setup_q()
622 req->rxq.vf_sb = fp_idx; in bnx2x_vfpf_setup_q()
623 req->rxq.sb_index = HC_INDEX_ETH_RX_CQ_CONS; in bnx2x_vfpf_setup_q()
624 req->rxq.hc_rate = bp->rx_ticks ? 1000000/bp->rx_ticks : 0; in bnx2x_vfpf_setup_q()
625 req->rxq.mtu = bp->dev->mtu; in bnx2x_vfpf_setup_q()
626 req->rxq.buf_sz = fp->rx_buf_size; in bnx2x_vfpf_setup_q()
627 req->rxq.sge_buf_sz = BCM_PAGE_SIZE * PAGES_PER_SGE; in bnx2x_vfpf_setup_q()
628 req->rxq.tpa_agg_sz = tpa_agg_size; in bnx2x_vfpf_setup_q()
629 req->rxq.max_sge_pkt = SGE_PAGE_ALIGN(bp->dev->mtu) >> SGE_PAGE_SHIFT; in bnx2x_vfpf_setup_q()
630 req->rxq.max_sge_pkt = ((req->rxq.max_sge_pkt + PAGES_PER_SGE - 1) & in bnx2x_vfpf_setup_q()
632 req->rxq.flags = flags; in bnx2x_vfpf_setup_q()
633 req->rxq.drop_flags = 0; in bnx2x_vfpf_setup_q()
634 req->rxq.cache_line_log = BNX2X_RX_ALIGN_SHIFT; in bnx2x_vfpf_setup_q()
635 req->rxq.stat_id = -1; /* No stats at the moment */ in bnx2x_vfpf_setup_q()
638 req->txq.txq_addr = fp->txdata_ptr[FIRST_TX_COS_INDEX]->tx_desc_mapping; in bnx2x_vfpf_setup_q()
639 req->txq.vf_sb = fp_idx; in bnx2x_vfpf_setup_q()
640 req->txq.sb_index = HC_INDEX_ETH_TX_CQ_CONS_COS0; in bnx2x_vfpf_setup_q()
641 req->txq.hc_rate = bp->tx_ticks ? 1000000/bp->tx_ticks : 0; in bnx2x_vfpf_setup_q()
642 req->txq.flags = flags; in bnx2x_vfpf_setup_q()
643 req->txq.traffic_type = LLFC_TRAFFIC_TYPE_NW; in bnx2x_vfpf_setup_q()
646 bnx2x_add_tlv(bp, req, req->first_tlv.tl.length, CHANNEL_TLV_LIST_END, in bnx2x_vfpf_setup_q()
650 bnx2x_dp_tlv_list(bp, req); in bnx2x_vfpf_setup_q()
663 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_setup_q()
670 struct vfpf_q_op_tlv *req = &bp->vf2pf_mbox->req.q_op; in bnx2x_vfpf_teardown_queue() local
675 bnx2x_vfpf_prep(bp, &req->first_tlv, CHANNEL_TLV_TEARDOWN_Q, in bnx2x_vfpf_teardown_queue()
676 sizeof(*req)); in bnx2x_vfpf_teardown_queue()
678 req->vf_qid = qidx; in bnx2x_vfpf_teardown_queue()
681 bnx2x_add_tlv(bp, req, req->first_tlv.tl.length, CHANNEL_TLV_LIST_END, in bnx2x_vfpf_teardown_queue()
685 bnx2x_dp_tlv_list(bp, req); in bnx2x_vfpf_teardown_queue()
703 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_teardown_queue()
711 struct vfpf_set_q_filters_tlv *req = &bp->vf2pf_mbox->req.set_q_filters; in bnx2x_vfpf_config_mac() local
717 bnx2x_vfpf_prep(bp, &req->first_tlv, CHANNEL_TLV_SET_Q_FILTERS, in bnx2x_vfpf_config_mac()
718 sizeof(*req)); in bnx2x_vfpf_config_mac()
720 req->flags = VFPF_SET_Q_FILTERS_MAC_VLAN_CHANGED; in bnx2x_vfpf_config_mac()
721 req->vf_qid = vf_qid; in bnx2x_vfpf_config_mac()
722 req->n_mac_vlan_filters = 1; in bnx2x_vfpf_config_mac()
724 req->filters[0].flags = VFPF_Q_FILTER_DEST_MAC_VALID; in bnx2x_vfpf_config_mac()
726 req->filters[0].flags |= VFPF_Q_FILTER_SET_MAC; in bnx2x_vfpf_config_mac()
732 memcpy(req->filters[0].mac, addr, ETH_ALEN); in bnx2x_vfpf_config_mac()
735 bnx2x_add_tlv(bp, req, req->first_tlv.tl.length, CHANNEL_TLV_LIST_END, in bnx2x_vfpf_config_mac()
739 bnx2x_dp_tlv_list(bp, req); in bnx2x_vfpf_config_mac()
759 memcpy(req->filters[0].mac, bp->dev->dev_addr, in bnx2x_vfpf_config_mac()
776 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_config_mac()
786 struct vfpf_rss_tlv *req = &bp->vf2pf_mbox->req.update_rss; in bnx2x_vfpf_config_rss() local
790 bnx2x_vfpf_prep(bp, &req->first_tlv, CHANNEL_TLV_UPDATE_RSS, in bnx2x_vfpf_config_rss()
791 sizeof(*req)); in bnx2x_vfpf_config_rss()
794 bnx2x_add_tlv(bp, req, req->first_tlv.tl.length, CHANNEL_TLV_LIST_END, in bnx2x_vfpf_config_rss()
797 memcpy(req->ind_table, params->ind_table, T_ETH_INDIRECTION_TABLE_SIZE); in bnx2x_vfpf_config_rss()
798 memcpy(req->rss_key, params->rss_key, sizeof(params->rss_key)); in bnx2x_vfpf_config_rss()
799 req->ind_table_size = T_ETH_INDIRECTION_TABLE_SIZE; in bnx2x_vfpf_config_rss()
800 req->rss_key_size = T_ETH_RSS_KEY; in bnx2x_vfpf_config_rss()
801 req->rss_result_mask = params->rss_result_mask; in bnx2x_vfpf_config_rss()
805 req->rss_flags |= VFPF_RSS_MODE_DISABLED; in bnx2x_vfpf_config_rss()
807 req->rss_flags |= VFPF_RSS_MODE_REGULAR; in bnx2x_vfpf_config_rss()
809 req->rss_flags |= VFPF_RSS_SET_SRCH; in bnx2x_vfpf_config_rss()
811 req->rss_flags |= VFPF_RSS_IPV4; in bnx2x_vfpf_config_rss()
813 req->rss_flags |= VFPF_RSS_IPV4_TCP; in bnx2x_vfpf_config_rss()
815 req->rss_flags |= VFPF_RSS_IPV4_UDP; in bnx2x_vfpf_config_rss()
817 req->rss_flags |= VFPF_RSS_IPV6; in bnx2x_vfpf_config_rss()
819 req->rss_flags |= VFPF_RSS_IPV6_TCP; in bnx2x_vfpf_config_rss()
821 req->rss_flags |= VFPF_RSS_IPV6_UDP; in bnx2x_vfpf_config_rss()
823 DP(BNX2X_MSG_IOV, "rss flags %x\n", req->rss_flags); in bnx2x_vfpf_config_rss()
826 bnx2x_dp_tlv_list(bp, req); in bnx2x_vfpf_config_rss()
845 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_config_rss()
853 struct vfpf_set_q_filters_tlv *req = &bp->vf2pf_mbox->req.set_q_filters; in bnx2x_vfpf_set_mcast() local
864 bnx2x_vfpf_prep(bp, &req->first_tlv, CHANNEL_TLV_SET_Q_FILTERS, in bnx2x_vfpf_set_mcast()
865 sizeof(*req)); in bnx2x_vfpf_set_mcast()
873 memcpy(req->multicast[i], bnx2x_mc_addr(ha), ETH_ALEN); in bnx2x_vfpf_set_mcast()
887 req->n_multicast = i; in bnx2x_vfpf_set_mcast()
888 req->flags |= VFPF_SET_Q_FILTERS_MULTICAST_CHANGED; in bnx2x_vfpf_set_mcast()
889 req->vf_qid = 0; in bnx2x_vfpf_set_mcast()
892 bnx2x_add_tlv(bp, req, req->first_tlv.tl.length, CHANNEL_TLV_LIST_END, in bnx2x_vfpf_set_mcast()
896 bnx2x_dp_tlv_list(bp, req); in bnx2x_vfpf_set_mcast()
909 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_set_mcast()
917 struct vfpf_set_q_filters_tlv *req = &bp->vf2pf_mbox->req.set_q_filters; in bnx2x_vfpf_storm_rx_mode() local
922 bnx2x_vfpf_prep(bp, &req->first_tlv, CHANNEL_TLV_SET_Q_FILTERS, in bnx2x_vfpf_storm_rx_mode()
923 sizeof(*req)); in bnx2x_vfpf_storm_rx_mode()
929 req->rx_mask = VFPF_RX_MASK_ACCEPT_NONE; in bnx2x_vfpf_storm_rx_mode()
934 req->rx_mask = VFPF_RX_MASK_ACCEPT_MATCHED_MULTICAST; in bnx2x_vfpf_storm_rx_mode()
935 req->rx_mask |= VFPF_RX_MASK_ACCEPT_MATCHED_UNICAST; in bnx2x_vfpf_storm_rx_mode()
936 req->rx_mask |= VFPF_RX_MASK_ACCEPT_BROADCAST; in bnx2x_vfpf_storm_rx_mode()
939 req->flags |= VFPF_SET_Q_FILTERS_RX_MASK_CHANGED; in bnx2x_vfpf_storm_rx_mode()
940 req->vf_qid = 0; in bnx2x_vfpf_storm_rx_mode()
943 bnx2x_add_tlv(bp, req, req->first_tlv.tl.length, CHANNEL_TLV_LIST_END, in bnx2x_vfpf_storm_rx_mode()
947 bnx2x_dp_tlv_list(bp, req); in bnx2x_vfpf_storm_rx_mode()
958 bnx2x_vfpf_finalize(bp, &req->first_tlv); in bnx2x_vfpf_storm_rx_mode()
1264 if (bnx2x_search_tlv_list(bp, &mbx->msg->req, in bnx2x_vf_mbx_acquire_resp()
1305 if (bnx2x_search_tlv_list(bp, &mbx->msg->req, in bnx2x_vf_mbx_acquire_chk_dorq()
1310 if (bnx2x_vf_mbx_is_windows_vm(bp, &mbx->msg->req.acquire)) in bnx2x_vf_mbx_acquire_chk_dorq()
1320 struct vfpf_acquire_tlv *acquire = &mbx->msg->req.acquire; in bnx2x_vf_mbx_acquire()
1346 if (bnx2x_vf_mbx_is_windows_vm(bp, &mbx->msg->req.acquire)) in bnx2x_vf_mbx_acquire()
1381 struct vfpf_init_tlv *init = &mbx->msg->req.init; in bnx2x_vf_mbx_init_vf()
1433 struct vfpf_setup_q_tlv *setup_q = &mbx->msg->req.setup_q; in bnx2x_vf_mbx_setup_q()
1638 &BP_VF_MBX(bp, vf->index)->msg->req.set_q_filters; in bnx2x_vf_mbx_qfilters()
1790 struct vfpf_set_q_filters_tlv *filters = &mbx->msg->req.set_q_filters; in bnx2x_vf_mbx_set_q_filters()
1816 int qid = mbx->msg->req.q_op.vf_qid; in bnx2x_vf_mbx_teardown_q()
1852 struct vfpf_rss_tlv *rss_tlv = &mbx->msg->req.update_rss; in bnx2x_vf_mbx_update_rss()
1936 struct vfpf_tpa_tlv *tpa_tlv = &mbx->msg->req.update_tpa; in bnx2x_vf_mbx_update_tpa()
2029 mbx->msg->req.tlv_buf_size.tlv_buffer[i]); in bnx2x_vf_mbx_request()
2120 mbx->first_tlv = mbx->msg->req.first_tlv; in bnx2x_vf_mbx()