• Home
  • Raw
  • Download

Lines Matching refs:vf

47 	struct i40e_vf *vf = pf->vf;  in i40e_vc_vf_broadcast()  local
50 for (i = 0; i < pf->num_alloc_vfs; i++, vf++) { in i40e_vc_vf_broadcast()
51 int abs_vf_id = vf->vf_id + (int)hw->func_caps.vf_base_id; in i40e_vc_vf_broadcast()
53 if (!test_bit(I40E_VF_STAT_INIT, &vf->vf_states) && in i40e_vc_vf_broadcast()
54 !test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states)) in i40e_vc_vf_broadcast()
71 static void i40e_vc_notify_vf_link_state(struct i40e_vf *vf) in i40e_vc_notify_vf_link_state() argument
74 struct i40e_pf *pf = vf->pf; in i40e_vc_notify_vf_link_state()
77 int abs_vf_id = vf->vf_id + (int)hw->func_caps.vf_base_id; in i40e_vc_notify_vf_link_state()
81 if (vf->link_forced) { in i40e_vc_notify_vf_link_state()
82 pfe.event_data.link_event.link_status = vf->link_up; in i40e_vc_notify_vf_link_state()
84 (vf->link_up ? I40E_LINK_SPEED_40GB : 0); in i40e_vc_notify_vf_link_state()
105 i40e_vc_notify_vf_link_state(&pf->vf[i]); in i40e_vc_notify_link_state()
130 void i40e_vc_notify_vf_reset(struct i40e_vf *vf) in i40e_vc_notify_vf_reset() argument
136 if (!vf || vf->vf_id >= vf->pf->num_alloc_vfs) in i40e_vc_notify_vf_reset()
140 if (!test_bit(I40E_VF_STAT_INIT, &vf->vf_states) && in i40e_vc_notify_vf_reset()
141 !test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states)) in i40e_vc_notify_vf_reset()
144 abs_vf_id = vf->vf_id + (int)vf->pf->hw.func_caps.vf_base_id; in i40e_vc_notify_vf_reset()
148 i40e_aq_send_msg_to_vf(&vf->pf->hw, abs_vf_id, I40E_VIRTCHNL_OP_EVENT, in i40e_vc_notify_vf_reset()
161 static inline void i40e_vc_disable_vf(struct i40e_pf *pf, struct i40e_vf *vf) in i40e_vc_disable_vf() argument
163 i40e_vc_notify_vf_reset(vf); in i40e_vc_disable_vf()
164 i40e_reset_vf(vf, false); in i40e_vc_disable_vf()
174 static inline bool i40e_vc_isvalid_vsi_id(struct i40e_vf *vf, u16 vsi_id) in i40e_vc_isvalid_vsi_id() argument
176 struct i40e_pf *pf = vf->pf; in i40e_vc_isvalid_vsi_id()
179 return (vsi && (vsi->vf_id == vf->vf_id)); in i40e_vc_isvalid_vsi_id()
190 static inline bool i40e_vc_isvalid_queue_id(struct i40e_vf *vf, u16 vsi_id, in i40e_vc_isvalid_queue_id() argument
193 struct i40e_pf *pf = vf->pf; in i40e_vc_isvalid_queue_id()
206 static inline bool i40e_vc_isvalid_vector_id(struct i40e_vf *vf, u8 vector_id) in i40e_vc_isvalid_vector_id() argument
208 struct i40e_pf *pf = vf->pf; in i40e_vc_isvalid_vector_id()
223 static u16 i40e_vc_get_pf_queue_id(struct i40e_vf *vf, u16 vsi_id, in i40e_vc_get_pf_queue_id() argument
226 struct i40e_pf *pf = vf->pf; in i40e_vc_get_pf_queue_id()
252 static void i40e_config_irq_link_list(struct i40e_vf *vf, u16 vsi_id, in i40e_config_irq_link_list() argument
256 struct i40e_pf *pf = vf->pf; in i40e_config_irq_link_list()
267 reg_idx = I40E_VPINT_LNKLST0(vf->vf_id); in i40e_config_irq_link_list()
270 ((pf->hw.func_caps.num_msix_vectors_vf - 1) * vf->vf_id) + in i40e_config_irq_link_list()
295 pf_queue_id = i40e_vc_get_pf_queue_id(vf, vsi_id, vsi_queue_id); in i40e_config_irq_link_list()
322 pf_queue_id = i40e_vc_get_pf_queue_id(vf, vsi_id, in i40e_config_irq_link_list()
341 if ((vf->driver_caps & I40E_VIRTCHNL_VF_OFFLOAD_RX_POLLING) && in i40e_config_irq_link_list()
359 static void i40e_release_iwarp_qvlist(struct i40e_vf *vf) in i40e_release_iwarp_qvlist() argument
361 struct i40e_pf *pf = vf->pf; in i40e_release_iwarp_qvlist()
362 struct i40e_virtchnl_iwarp_qvlist_info *qvlist_info = vf->qvlist_info; in i40e_release_iwarp_qvlist()
366 if (!vf->qvlist_info) in i40e_release_iwarp_qvlist()
384 reg_idx = (msix_vf - 1) * vf->vf_id + qv_info->ceq_idx; in i40e_release_iwarp_qvlist()
391 reg_idx = ((msix_vf - 1) * vf->vf_id) + (v_idx - 1); in i40e_release_iwarp_qvlist()
400 kfree(vf->qvlist_info); in i40e_release_iwarp_qvlist()
401 vf->qvlist_info = NULL; in i40e_release_iwarp_qvlist()
411 static int i40e_config_iwarp_qvlist(struct i40e_vf *vf, in i40e_config_iwarp_qvlist() argument
414 struct i40e_pf *pf = vf->pf; in i40e_config_iwarp_qvlist()
424 vf->qvlist_info = kzalloc(size, GFP_KERNEL); in i40e_config_iwarp_qvlist()
425 vf->qvlist_info->num_vectors = qvlist_info->num_vectors; in i40e_config_iwarp_qvlist()
435 if (!i40e_vc_isvalid_vector_id(vf, v_idx)) in i40e_config_iwarp_qvlist()
438 vf->qvlist_info->qv_info[i] = *qv_info; in i40e_config_iwarp_qvlist()
440 reg_idx = ((msix_vf - 1) * vf->vf_id) + (v_idx - 1); in i40e_config_iwarp_qvlist()
452 reg_idx = (msix_vf - 1) * vf->vf_id + qv_info->ceq_idx; in i40e_config_iwarp_qvlist()
460 reg_idx = ((msix_vf - 1) * vf->vf_id) + (v_idx - 1); in i40e_config_iwarp_qvlist()
473 wr32(hw, I40E_VPINT_AEQCTL(vf->vf_id), reg); in i40e_config_iwarp_qvlist()
479 kfree(vf->qvlist_info); in i40e_config_iwarp_qvlist()
480 vf->qvlist_info = NULL; in i40e_config_iwarp_qvlist()
493 static int i40e_config_vsi_tx_queue(struct i40e_vf *vf, u16 vsi_id, in i40e_config_vsi_tx_queue() argument
497 struct i40e_pf *pf = vf->pf; in i40e_config_vsi_tx_queue()
505 if (!i40e_vc_isvalid_vsi_id(vf, info->vsi_id)) { in i40e_config_vsi_tx_queue()
509 pf_queue_id = i40e_vc_get_pf_queue_id(vf, vsi_id, vsi_queue_id); in i40e_config_vsi_tx_queue()
551 qtx_ctl |= (((vf->vf_id + hw->func_caps.vf_base_id) in i40e_config_vsi_tx_queue()
570 static int i40e_config_vsi_rx_queue(struct i40e_vf *vf, u16 vsi_id, in i40e_config_vsi_rx_queue() argument
574 struct i40e_pf *pf = vf->pf; in i40e_config_vsi_rx_queue()
580 pf_queue_id = i40e_vc_get_pf_queue_id(vf, vsi_id, vsi_queue_id); in i40e_config_vsi_rx_queue()
659 static int i40e_alloc_vsi_res(struct i40e_vf *vf, enum i40e_vsi_type type) in i40e_alloc_vsi_res() argument
662 struct i40e_pf *pf = vf->pf; in i40e_alloc_vsi_res()
666 vsi = i40e_vsi_setup(pf, type, pf->vsi[pf->lan_vsi]->seid, vf->vf_id); in i40e_alloc_vsi_res()
671 vf->vf_id, pf->hw.aq.asq_last_status); in i40e_alloc_vsi_res()
678 vf->lan_vsi_idx = vsi->idx; in i40e_alloc_vsi_res()
679 vf->lan_vsi_id = vsi->id; in i40e_alloc_vsi_res()
686 if (vf->port_vlan_id) in i40e_alloc_vsi_res()
687 i40e_vsi_add_pvid(vsi, vf->port_vlan_id); in i40e_alloc_vsi_res()
690 if (is_valid_ether_addr(vf->default_lan_addr.addr)) { in i40e_alloc_vsi_res()
691 f = i40e_add_filter(vsi, vf->default_lan_addr.addr, in i40e_alloc_vsi_res()
692 vf->port_vlan_id ? vf->port_vlan_id : -1, in i40e_alloc_vsi_res()
697 vf->default_lan_addr.addr, vf->vf_id); in i40e_alloc_vsi_res()
700 i40e_write_rx_ctl(&pf->hw, I40E_VFQF_HENA1(0, vf->vf_id), in i40e_alloc_vsi_res()
702 i40e_write_rx_ctl(&pf->hw, I40E_VFQF_HENA1(1, vf->vf_id), in i40e_alloc_vsi_res()
712 if (vf->tx_rate) { in i40e_alloc_vsi_res()
714 vf->tx_rate / 50, 0, NULL); in i40e_alloc_vsi_res()
717 vf->vf_id, ret); in i40e_alloc_vsi_res()
730 static void i40e_enable_vf_mappings(struct i40e_vf *vf) in i40e_enable_vf_mappings() argument
732 struct i40e_pf *pf = vf->pf; in i40e_enable_vf_mappings()
741 i40e_write_rx_ctl(hw, I40E_VSILAN_QBASE(vf->lan_vsi_id), in i40e_enable_vf_mappings()
746 wr32(hw, I40E_VPLAN_MAPENA(vf->vf_id), reg); in i40e_enable_vf_mappings()
749 for (j = 0; j < pf->vsi[vf->lan_vsi_idx]->alloc_queue_pairs; j++) { in i40e_enable_vf_mappings()
750 u16 qid = i40e_vc_get_pf_queue_id(vf, vf->lan_vsi_id, j); in i40e_enable_vf_mappings()
753 wr32(hw, I40E_VPLAN_QTABLE(total_queue_pairs, vf->vf_id), reg); in i40e_enable_vf_mappings()
759 if (j * 2 >= pf->vsi[vf->lan_vsi_idx]->alloc_queue_pairs) { in i40e_enable_vf_mappings()
762 u16 qid = i40e_vc_get_pf_queue_id(vf, vf->lan_vsi_id, in i40e_enable_vf_mappings()
765 qid = i40e_vc_get_pf_queue_id(vf, vf->lan_vsi_id, in i40e_enable_vf_mappings()
769 i40e_write_rx_ctl(hw, I40E_VSILAN_QTABLE(j, vf->lan_vsi_id), in i40e_enable_vf_mappings()
782 static void i40e_disable_vf_mappings(struct i40e_vf *vf) in i40e_disable_vf_mappings() argument
784 struct i40e_pf *pf = vf->pf; in i40e_disable_vf_mappings()
789 wr32(hw, I40E_VPLAN_MAPENA(vf->vf_id), 0); in i40e_disable_vf_mappings()
791 wr32(hw, I40E_VPLAN_QTABLE(i, vf->vf_id), in i40e_disable_vf_mappings()
802 static void i40e_free_vf_res(struct i40e_vf *vf) in i40e_free_vf_res() argument
804 struct i40e_pf *pf = vf->pf; in i40e_free_vf_res()
810 if (vf->lan_vsi_idx) { in i40e_free_vf_res()
811 i40e_vsi_release(pf->vsi[vf->lan_vsi_idx]); in i40e_free_vf_res()
812 vf->lan_vsi_idx = 0; in i40e_free_vf_res()
813 vf->lan_vsi_id = 0; in i40e_free_vf_res()
821 reg_idx = I40E_VFINT_DYN_CTL0(vf->vf_id); in i40e_free_vf_res()
824 (vf->vf_id)) in i40e_free_vf_res()
834 reg_idx = I40E_VPINT_LNKLST0(vf->vf_id); in i40e_free_vf_res()
837 (vf->vf_id)) in i40e_free_vf_res()
847 vf->num_queue_pairs = 0; in i40e_free_vf_res()
848 vf->vf_states = 0; in i40e_free_vf_res()
849 clear_bit(I40E_VF_STAT_INIT, &vf->vf_states); in i40e_free_vf_res()
858 static int i40e_alloc_vf_res(struct i40e_vf *vf) in i40e_alloc_vf_res() argument
860 struct i40e_pf *pf = vf->pf; in i40e_alloc_vf_res()
865 ret = i40e_alloc_vsi_res(vf, I40E_VSI_SRIOV); in i40e_alloc_vf_res()
868 total_queue_pairs += pf->vsi[vf->lan_vsi_idx]->alloc_queue_pairs; in i40e_alloc_vf_res()
870 if (vf->trusted) in i40e_alloc_vf_res()
871 set_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps); in i40e_alloc_vf_res()
873 clear_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps); in i40e_alloc_vf_res()
878 vf->num_queue_pairs = total_queue_pairs; in i40e_alloc_vf_res()
881 set_bit(I40E_VF_STAT_INIT, &vf->vf_states); in i40e_alloc_vf_res()
885 i40e_free_vf_res(vf); in i40e_alloc_vf_res()
899 static int i40e_quiesce_vf_pci(struct i40e_vf *vf) in i40e_quiesce_vf_pci() argument
901 struct i40e_pf *pf = vf->pf; in i40e_quiesce_vf_pci()
906 vf_abs_id = vf->vf_id + hw->func_caps.vf_base_id; in i40e_quiesce_vf_pci()
926 void i40e_reset_vf(struct i40e_vf *vf, bool flr) in i40e_reset_vf() argument
928 struct i40e_pf *pf = vf->pf; in i40e_reset_vf()
938 clear_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states); in i40e_reset_vf()
945 reg = rd32(hw, I40E_VPGEN_VFRTRIG(vf->vf_id)); in i40e_reset_vf()
947 wr32(hw, I40E_VPGEN_VFRTRIG(vf->vf_id), reg); in i40e_reset_vf()
951 reg_idx = (hw->func_caps.vf_base_id + vf->vf_id) / 32; in i40e_reset_vf()
952 bit_idx = (hw->func_caps.vf_base_id + vf->vf_id) % 32; in i40e_reset_vf()
956 if (i40e_quiesce_vf_pci(vf)) in i40e_reset_vf()
958 vf->vf_id); in i40e_reset_vf()
970 reg = rd32(hw, I40E_VPGEN_VFRSTAT(vf->vf_id)); in i40e_reset_vf()
982 vf->vf_id); in i40e_reset_vf()
983 wr32(hw, I40E_VFGEN_RSTAT1(vf->vf_id), I40E_VFR_COMPLETED); in i40e_reset_vf()
985 reg = rd32(hw, I40E_VPGEN_VFRTRIG(vf->vf_id)); in i40e_reset_vf()
987 wr32(hw, I40E_VPGEN_VFRTRIG(vf->vf_id), reg); in i40e_reset_vf()
990 if (vf->lan_vsi_idx == 0) in i40e_reset_vf()
993 i40e_vsi_control_rings(pf->vsi[vf->lan_vsi_idx], false); in i40e_reset_vf()
996 i40e_free_vf_res(vf); in i40e_reset_vf()
997 if (!i40e_alloc_vf_res(vf)) { in i40e_reset_vf()
998 int abs_vf_id = vf->vf_id + hw->func_caps.vf_base_id; in i40e_reset_vf()
999 i40e_enable_vf_mappings(vf); in i40e_reset_vf()
1000 set_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states); in i40e_reset_vf()
1001 clear_bit(I40E_VF_STAT_DISABLED, &vf->vf_states); in i40e_reset_vf()
1003 if (vf->pf->num_alloc_vfs) in i40e_reset_vf()
1005 vf->num_vlan = 0; in i40e_reset_vf()
1008 wr32(hw, I40E_VFGEN_RSTAT1(vf->vf_id), I40E_VFR_VFACTIVE); in i40e_reset_vf()
1026 if (!pf->vf) in i40e_free_vfs()
1033 if (test_bit(I40E_VF_STAT_INIT, &pf->vf[i].vf_states)) in i40e_free_vfs()
1034 i40e_vsi_control_rings(pf->vsi[pf->vf[i].lan_vsi_idx], in i40e_free_vfs()
1052 if (test_bit(I40E_VF_STAT_INIT, &pf->vf[i].vf_states)) in i40e_free_vfs()
1053 i40e_free_vf_res(&pf->vf[i]); in i40e_free_vfs()
1055 i40e_disable_vf_mappings(&pf->vf[i]); in i40e_free_vfs()
1058 kfree(pf->vf); in i40e_free_vfs()
1059 pf->vf = NULL; in i40e_free_vfs()
1109 pf->vf = vfs; in i40e_alloc_vfs()
1231 static int i40e_vc_send_msg_to_vf(struct i40e_vf *vf, u32 v_opcode, in i40e_vc_send_msg_to_vf() argument
1240 if (!vf || vf->vf_id >= vf->pf->num_alloc_vfs) in i40e_vc_send_msg_to_vf()
1243 pf = vf->pf; in i40e_vc_send_msg_to_vf()
1245 abs_vf_id = vf->vf_id + hw->func_caps.vf_base_id; in i40e_vc_send_msg_to_vf()
1249 vf->num_invalid_msgs++; in i40e_vc_send_msg_to_vf()
1251 vf->vf_id, v_opcode, v_retval); in i40e_vc_send_msg_to_vf()
1252 if (vf->num_invalid_msgs > in i40e_vc_send_msg_to_vf()
1256 vf->vf_id); in i40e_vc_send_msg_to_vf()
1258 set_bit(I40E_VF_STAT_DISABLED, &vf->vf_states); in i40e_vc_send_msg_to_vf()
1261 vf->num_valid_msgs++; in i40e_vc_send_msg_to_vf()
1263 vf->num_invalid_msgs = 0; in i40e_vc_send_msg_to_vf()
1271 vf->vf_id, pf->hw.aq.asq_last_status); in i40e_vc_send_msg_to_vf()
1286 static int i40e_vc_send_resp_to_vf(struct i40e_vf *vf, in i40e_vc_send_resp_to_vf() argument
1290 return i40e_vc_send_msg_to_vf(vf, opcode, retval, NULL, 0); in i40e_vc_send_resp_to_vf()
1299 static int i40e_vc_get_version_msg(struct i40e_vf *vf, u8 *msg) in i40e_vc_get_version_msg() argument
1305 vf->vf_ver = *(struct i40e_virtchnl_version_info *)msg; in i40e_vc_get_version_msg()
1307 if (VF_IS_V10(vf)) in i40e_vc_get_version_msg()
1309 return i40e_vc_send_msg_to_vf(vf, I40E_VIRTCHNL_OP_VERSION, in i40e_vc_get_version_msg()
1323 static int i40e_vc_get_vf_resources_msg(struct i40e_vf *vf, u8 *msg) in i40e_vc_get_vf_resources_msg() argument
1326 struct i40e_pf *pf = vf->pf; in i40e_vc_get_vf_resources_msg()
1333 if (!test_bit(I40E_VF_STAT_INIT, &vf->vf_states)) { in i40e_vc_get_vf_resources_msg()
1347 if (VF_IS_V11(vf)) in i40e_vc_get_vf_resources_msg()
1348 vf->driver_caps = *(u32 *)msg; in i40e_vc_get_vf_resources_msg()
1350 vf->driver_caps = I40E_VIRTCHNL_VF_OFFLOAD_L2 | in i40e_vc_get_vf_resources_msg()
1355 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_vc_get_vf_resources_msg()
1359 if (i40e_vf_client_capable(pf, vf->vf_id, I40E_CLIENT_IWARP) && in i40e_vc_get_vf_resources_msg()
1360 (vf->driver_caps & I40E_VIRTCHNL_VF_OFFLOAD_IWARP)) { in i40e_vc_get_vf_resources_msg()
1362 set_bit(I40E_VF_STAT_IWARPENA, &vf->vf_states); in i40e_vc_get_vf_resources_msg()
1365 if (vf->driver_caps & I40E_VIRTCHNL_VF_OFFLOAD_RSS_PF) { in i40e_vc_get_vf_resources_msg()
1369 (vf->driver_caps & I40E_VIRTCHNL_VF_OFFLOAD_RSS_AQ)) in i40e_vc_get_vf_resources_msg()
1378 if (vf->driver_caps & I40E_VIRTCHNL_VF_OFFLOAD_RSS_PCTYPE_V2) in i40e_vc_get_vf_resources_msg()
1383 if (vf->driver_caps & I40E_VIRTCHNL_VF_OFFLOAD_RX_POLLING) { in i40e_vc_get_vf_resources_msg()
1387 vf->vf_id); in i40e_vc_get_vf_resources_msg()
1395 if (vf->driver_caps & I40E_VIRTCHNL_VF_OFFLOAD_WB_ON_ITR) in i40e_vc_get_vf_resources_msg()
1401 vfres->num_queue_pairs = vf->num_queue_pairs; in i40e_vc_get_vf_resources_msg()
1406 if (vf->lan_vsi_idx) { in i40e_vc_get_vf_resources_msg()
1407 vfres->vsi_res[0].vsi_id = vf->lan_vsi_id; in i40e_vc_get_vf_resources_msg()
1414 vf->default_lan_addr.addr); in i40e_vc_get_vf_resources_msg()
1416 set_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states); in i40e_vc_get_vf_resources_msg()
1420 ret = i40e_vc_send_msg_to_vf(vf, I40E_VIRTCHNL_OP_GET_VF_RESOURCES, in i40e_vc_get_vf_resources_msg()
1437 static void i40e_vc_reset_vf_msg(struct i40e_vf *vf) in i40e_vc_reset_vf_msg() argument
1439 if (test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states)) in i40e_vc_reset_vf_msg()
1440 i40e_reset_vf(vf, false); in i40e_vc_reset_vf_msg()
1471 static int i40e_vc_config_promiscuous_mode_msg(struct i40e_vf *vf, in i40e_vc_config_promiscuous_mode_msg() argument
1476 struct i40e_pf *pf = vf->pf; in i40e_vc_config_promiscuous_mode_msg()
1486 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states) || in i40e_vc_config_promiscuous_mode_msg()
1487 !i40e_vc_isvalid_vsi_id(vf, info->vsi_id) || in i40e_vc_config_promiscuous_mode_msg()
1492 if (!test_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps)) { in i40e_vc_config_promiscuous_mode_msg()
1495 vf->vf_id); in i40e_vc_config_promiscuous_mode_msg()
1504 if (vf->port_vlan_id) { in i40e_vc_config_promiscuous_mode_msg()
1507 vf->port_vlan_id, in i40e_vc_config_promiscuous_mode_msg()
1535 vf->vf_id, in i40e_vc_config_promiscuous_mode_msg()
1545 vf->vf_id); in i40e_vc_config_promiscuous_mode_msg()
1547 set_bit(I40E_VF_STAT_MC_PROMISC, &vf->vf_states); in i40e_vc_config_promiscuous_mode_msg()
1549 clear_bit(I40E_VF_STAT_MC_PROMISC, &vf->vf_states); in i40e_vc_config_promiscuous_mode_msg()
1554 if (vf->port_vlan_id) { in i40e_vc_config_promiscuous_mode_msg()
1557 vf->port_vlan_id, in i40e_vc_config_promiscuous_mode_msg()
1586 vf->vf_id, info->flags, in i40e_vc_config_promiscuous_mode_msg()
1595 vf->vf_id); in i40e_vc_config_promiscuous_mode_msg()
1597 set_bit(I40E_VF_STAT_UC_PROMISC, &vf->vf_states); in i40e_vc_config_promiscuous_mode_msg()
1599 clear_bit(I40E_VF_STAT_UC_PROMISC, &vf->vf_states); in i40e_vc_config_promiscuous_mode_msg()
1604 return i40e_vc_send_resp_to_vf(vf, in i40e_vc_config_promiscuous_mode_msg()
1618 static int i40e_vc_config_queues_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_config_queues_msg() argument
1623 struct i40e_pf *pf = vf->pf; in i40e_vc_config_queues_msg()
1628 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states)) { in i40e_vc_config_queues_msg()
1634 if (!i40e_vc_isvalid_vsi_id(vf, vsi_id)) { in i40e_vc_config_queues_msg()
1644 !i40e_vc_isvalid_queue_id(vf, vsi_id, vsi_queue_id)) { in i40e_vc_config_queues_msg()
1649 if (i40e_config_vsi_rx_queue(vf, vsi_id, vsi_queue_id, in i40e_vc_config_queues_msg()
1651 i40e_config_vsi_tx_queue(vf, vsi_id, vsi_queue_id, in i40e_vc_config_queues_msg()
1658 pf->vsi[vf->lan_vsi_idx]->num_queue_pairs = qci->num_queue_pairs; in i40e_vc_config_queues_msg()
1662 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_CONFIG_VSI_QUEUES, in i40e_vc_config_queues_msg()
1675 static int i40e_vc_config_irq_map_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_config_irq_map_msg() argument
1685 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states)) { in i40e_vc_config_irq_map_msg()
1696 if (!i40e_vc_isvalid_vector_id(vf, vector_id) || in i40e_vc_config_irq_map_msg()
1697 !i40e_vc_isvalid_vsi_id(vf, vsi_id)) { in i40e_vc_config_irq_map_msg()
1705 if (!i40e_vc_isvalid_queue_id(vf, vsi_id, in i40e_vc_config_irq_map_msg()
1714 if (!i40e_vc_isvalid_queue_id(vf, vsi_id, in i40e_vc_config_irq_map_msg()
1721 i40e_config_irq_link_list(vf, vsi_id, map); in i40e_vc_config_irq_map_msg()
1725 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_CONFIG_IRQ_MAP, in i40e_vc_config_irq_map_msg()
1737 static int i40e_vc_enable_queues_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_enable_queues_msg() argument
1741 struct i40e_pf *pf = vf->pf; in i40e_vc_enable_queues_msg()
1745 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states)) { in i40e_vc_enable_queues_msg()
1750 if (!i40e_vc_isvalid_vsi_id(vf, vsi_id)) { in i40e_vc_enable_queues_msg()
1760 if (i40e_vsi_control_rings(pf->vsi[vf->lan_vsi_idx], true)) in i40e_vc_enable_queues_msg()
1764 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_ENABLE_QUEUES, in i40e_vc_enable_queues_msg()
1777 static int i40e_vc_disable_queues_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_disable_queues_msg() argument
1781 struct i40e_pf *pf = vf->pf; in i40e_vc_disable_queues_msg()
1784 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states)) { in i40e_vc_disable_queues_msg()
1789 if (!i40e_vc_isvalid_vsi_id(vf, vqs->vsi_id)) { in i40e_vc_disable_queues_msg()
1799 if (i40e_vsi_control_rings(pf->vsi[vf->lan_vsi_idx], false)) in i40e_vc_disable_queues_msg()
1804 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_DISABLE_QUEUES, in i40e_vc_disable_queues_msg()
1816 static int i40e_vc_get_stats_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_get_stats_msg() argument
1820 struct i40e_pf *pf = vf->pf; in i40e_vc_get_stats_msg()
1827 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states)) { in i40e_vc_get_stats_msg()
1832 if (!i40e_vc_isvalid_vsi_id(vf, vqs->vsi_id)) { in i40e_vc_get_stats_msg()
1837 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_vc_get_stats_msg()
1847 return i40e_vc_send_msg_to_vf(vf, I40E_VIRTCHNL_OP_GET_STATS, aq_ret, in i40e_vc_get_stats_msg()
1865 static inline int i40e_check_vf_permission(struct i40e_vf *vf, u8 *macaddr) in i40e_check_vf_permission() argument
1867 struct i40e_pf *pf = vf->pf; in i40e_check_vf_permission()
1874 } else if (vf->pf_set_mac && !is_multicast_ether_addr(macaddr) && in i40e_check_vf_permission()
1875 !test_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps) && in i40e_check_vf_permission()
1876 !ether_addr_equal(macaddr, vf->default_lan_addr.addr)) { in i40e_check_vf_permission()
1887 } else if ((vf->num_mac >= I40E_VC_MAX_MAC_ADDR_PER_VF) && in i40e_check_vf_permission()
1888 !test_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps)) { in i40e_check_vf_permission()
1904 static int i40e_vc_add_mac_addr_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_add_mac_addr_msg() argument
1908 struct i40e_pf *pf = vf->pf; in i40e_vc_add_mac_addr_msg()
1914 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states) || in i40e_vc_add_mac_addr_msg()
1915 !i40e_vc_isvalid_vsi_id(vf, vsi_id)) { in i40e_vc_add_mac_addr_msg()
1921 ret = i40e_check_vf_permission(vf, al->list[i].addr); in i40e_vc_add_mac_addr_msg()
1925 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_vc_add_mac_addr_msg()
1949 al->list[i].addr, vf->vf_id); in i40e_vc_add_mac_addr_msg()
1954 vf->num_mac++; in i40e_vc_add_mac_addr_msg()
1963 vf->vf_id, ret); in i40e_vc_add_mac_addr_msg()
1967 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_ADD_ETHER_ADDRESS, in i40e_vc_add_mac_addr_msg()
1979 static int i40e_vc_del_mac_addr_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_del_mac_addr_msg() argument
1983 struct i40e_pf *pf = vf->pf; in i40e_vc_del_mac_addr_msg()
1989 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states) || in i40e_vc_del_mac_addr_msg()
1990 !i40e_vc_isvalid_vsi_id(vf, vsi_id)) { in i40e_vc_del_mac_addr_msg()
1999 al->list[i].addr, vf->vf_id); in i40e_vc_del_mac_addr_msg()
2004 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_vc_del_mac_addr_msg()
2014 vf->num_mac--; in i40e_vc_del_mac_addr_msg()
2023 vf->vf_id, ret); in i40e_vc_del_mac_addr_msg()
2027 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_DEL_ETHER_ADDRESS, in i40e_vc_del_mac_addr_msg()
2039 static int i40e_vc_add_vlan_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_add_vlan_msg() argument
2043 struct i40e_pf *pf = vf->pf; in i40e_vc_add_vlan_msg()
2049 if ((vf->num_vlan >= I40E_VC_MAX_VLAN_PER_VF) && in i40e_vc_add_vlan_msg()
2050 !test_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps)) { in i40e_vc_add_vlan_msg()
2055 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states) || in i40e_vc_add_vlan_msg()
2056 !i40e_vc_isvalid_vsi_id(vf, vsi_id)) { in i40e_vc_add_vlan_msg()
2069 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_vc_add_vlan_msg()
2080 vf->num_vlan++; in i40e_vc_add_vlan_msg()
2082 if (test_bit(I40E_VF_STAT_UC_PROMISC, &vf->vf_states)) in i40e_vc_add_vlan_msg()
2087 if (test_bit(I40E_VF_STAT_MC_PROMISC, &vf->vf_states)) in i40e_vc_add_vlan_msg()
2096 vfl->vlan_id[i], vf->vf_id, ret); in i40e_vc_add_vlan_msg()
2101 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_ADD_VLAN, aq_ret); in i40e_vc_add_vlan_msg()
2112 static int i40e_vc_remove_vlan_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_remove_vlan_msg() argument
2116 struct i40e_pf *pf = vf->pf; in i40e_vc_remove_vlan_msg()
2122 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states) || in i40e_vc_remove_vlan_msg()
2123 !i40e_vc_isvalid_vsi_id(vf, vsi_id)) { in i40e_vc_remove_vlan_msg()
2135 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_vc_remove_vlan_msg()
2144 vf->num_vlan--; in i40e_vc_remove_vlan_msg()
2146 if (test_bit(I40E_VF_STAT_UC_PROMISC, &vf->vf_states)) in i40e_vc_remove_vlan_msg()
2151 if (test_bit(I40E_VF_STAT_MC_PROMISC, &vf->vf_states)) in i40e_vc_remove_vlan_msg()
2160 vfl->vlan_id[i], vf->vf_id, ret); in i40e_vc_remove_vlan_msg()
2165 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_DEL_VLAN, aq_ret); in i40e_vc_remove_vlan_msg()
2176 static int i40e_vc_iwarp_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_iwarp_msg() argument
2178 struct i40e_pf *pf = vf->pf; in i40e_vc_iwarp_msg()
2179 int abs_vf_id = vf->vf_id + pf->hw.func_caps.vf_base_id; in i40e_vc_iwarp_msg()
2182 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states) || in i40e_vc_iwarp_msg()
2183 !test_bit(I40E_VF_STAT_IWARPENA, &vf->vf_states)) { in i40e_vc_iwarp_msg()
2193 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_IWARP, in i40e_vc_iwarp_msg()
2206 static int i40e_vc_iwarp_qvmap_msg(struct i40e_vf *vf, u8 *msg, u16 msglen, in i40e_vc_iwarp_qvmap_msg() argument
2213 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states) || in i40e_vc_iwarp_qvmap_msg()
2214 !test_bit(I40E_VF_STAT_IWARPENA, &vf->vf_states)) { in i40e_vc_iwarp_qvmap_msg()
2220 if (i40e_config_iwarp_qvlist(vf, qvlist_info)) in i40e_vc_iwarp_qvmap_msg()
2223 i40e_release_iwarp_qvlist(vf); in i40e_vc_iwarp_qvmap_msg()
2228 return i40e_vc_send_resp_to_vf(vf, in i40e_vc_iwarp_qvmap_msg()
2242 static int i40e_vc_config_rss_key(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_config_rss_key() argument
2246 struct i40e_pf *pf = vf->pf; in i40e_vc_config_rss_key()
2251 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states) || in i40e_vc_config_rss_key()
2252 !i40e_vc_isvalid_vsi_id(vf, vsi_id) || in i40e_vc_config_rss_key()
2258 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_vc_config_rss_key()
2262 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_CONFIG_RSS_KEY, in i40e_vc_config_rss_key()
2274 static int i40e_vc_config_rss_lut(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_config_rss_lut() argument
2278 struct i40e_pf *pf = vf->pf; in i40e_vc_config_rss_lut()
2283 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states) || in i40e_vc_config_rss_lut()
2284 !i40e_vc_isvalid_vsi_id(vf, vsi_id) || in i40e_vc_config_rss_lut()
2290 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_vc_config_rss_lut()
2294 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_CONFIG_RSS_LUT, in i40e_vc_config_rss_lut()
2306 static int i40e_vc_get_rss_hena(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_get_rss_hena() argument
2309 struct i40e_pf *pf = vf->pf; in i40e_vc_get_rss_hena()
2313 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states)) { in i40e_vc_get_rss_hena()
2328 aq_ret = i40e_vc_send_msg_to_vf(vf, I40E_VIRTCHNL_OP_GET_RSS_HENA_CAPS, in i40e_vc_get_rss_hena()
2342 static int i40e_vc_set_rss_hena(struct i40e_vf *vf, u8 *msg, u16 msglen) in i40e_vc_set_rss_hena() argument
2346 struct i40e_pf *pf = vf->pf; in i40e_vc_set_rss_hena()
2350 if (!test_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states)) { in i40e_vc_set_rss_hena()
2354 i40e_write_rx_ctl(hw, I40E_VFQF_HENA1(0, vf->vf_id), (u32)vrh->hena); in i40e_vc_set_rss_hena()
2355 i40e_write_rx_ctl(hw, I40E_VFQF_HENA1(1, vf->vf_id), in i40e_vc_set_rss_hena()
2360 return i40e_vc_send_resp_to_vf(vf, I40E_VIRTCHNL_OP_SET_RSS_HENA, in i40e_vc_set_rss_hena()
2373 static int i40e_vc_validate_vf_msg(struct i40e_vf *vf, u32 v_opcode, in i40e_vc_validate_vf_msg() argument
2380 if (test_bit(I40E_VF_STAT_DISABLED, &vf->vf_states)) in i40e_vc_validate_vf_msg()
2391 if (VF_IS_V11(vf)) in i40e_vc_validate_vf_msg()
2519 i40e_vc_send_resp_to_vf(vf, v_opcode, I40E_ERR_PARAM); in i40e_vc_validate_vf_msg()
2542 struct i40e_vf *vf; in i40e_vc_process_vf_msg() local
2548 vf = &(pf->vf[local_vf_id]); in i40e_vc_process_vf_msg()
2550 ret = i40e_vc_validate_vf_msg(vf, v_opcode, v_retval, msg, msglen); in i40e_vc_process_vf_msg()
2560 ret = i40e_vc_get_version_msg(vf, msg); in i40e_vc_process_vf_msg()
2563 ret = i40e_vc_get_vf_resources_msg(vf, msg); in i40e_vc_process_vf_msg()
2566 i40e_vc_reset_vf_msg(vf); in i40e_vc_process_vf_msg()
2570 ret = i40e_vc_config_promiscuous_mode_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2573 ret = i40e_vc_config_queues_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2576 ret = i40e_vc_config_irq_map_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2579 ret = i40e_vc_enable_queues_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2580 i40e_vc_notify_vf_link_state(vf); in i40e_vc_process_vf_msg()
2583 ret = i40e_vc_disable_queues_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2586 ret = i40e_vc_add_mac_addr_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2589 ret = i40e_vc_del_mac_addr_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2592 ret = i40e_vc_add_vlan_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2595 ret = i40e_vc_remove_vlan_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2598 ret = i40e_vc_get_stats_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2601 ret = i40e_vc_iwarp_msg(vf, msg, msglen); in i40e_vc_process_vf_msg()
2604 ret = i40e_vc_iwarp_qvmap_msg(vf, msg, msglen, true); in i40e_vc_process_vf_msg()
2607 ret = i40e_vc_iwarp_qvmap_msg(vf, msg, msglen, false); in i40e_vc_process_vf_msg()
2610 ret = i40e_vc_config_rss_key(vf, msg, msglen); in i40e_vc_process_vf_msg()
2613 ret = i40e_vc_config_rss_lut(vf, msg, msglen); in i40e_vc_process_vf_msg()
2616 ret = i40e_vc_get_rss_hena(vf, msg, msglen); in i40e_vc_process_vf_msg()
2619 ret = i40e_vc_set_rss_hena(vf, msg, msglen); in i40e_vc_process_vf_msg()
2626 ret = i40e_vc_send_resp_to_vf(vf, v_opcode, in i40e_vc_process_vf_msg()
2645 struct i40e_vf *vf; in i40e_vc_process_vflr_event() local
2666 vf = &pf->vf[vf_id]; in i40e_vc_process_vflr_event()
2670 i40e_reset_vf(vf, true); in i40e_vc_process_vflr_event()
2690 struct i40e_vf *vf; in i40e_ndo_set_vf_mac() local
2701 vf = &(pf->vf[vf_id]); in i40e_ndo_set_vf_mac()
2702 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_ndo_set_vf_mac()
2703 if (!test_bit(I40E_VF_STAT_INIT, &vf->vf_states)) { in i40e_ndo_set_vf_mac()
2723 if (!is_zero_ether_addr(vf->default_lan_addr.addr)) in i40e_ndo_set_vf_mac()
2724 i40e_del_filter(vsi, vf->default_lan_addr.addr, in i40e_ndo_set_vf_mac()
2725 vf->port_vlan_id ? vf->port_vlan_id : -1, in i40e_ndo_set_vf_mac()
2743 ether_addr_copy(vf->default_lan_addr.addr, mac); in i40e_ndo_set_vf_mac()
2744 vf->pf_set_mac = true; in i40e_ndo_set_vf_mac()
2746 i40e_vc_disable_vf(pf, vf); in i40e_ndo_set_vf_mac()
2771 struct i40e_vf *vf; in i40e_ndo_set_vf_port_vlan() local
2793 vf = &(pf->vf[vf_id]); in i40e_ndo_set_vf_port_vlan()
2794 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_ndo_set_vf_port_vlan()
2795 if (!test_bit(I40E_VF_STAT_INIT, &vf->vf_states)) { in i40e_ndo_set_vf_port_vlan()
2818 i40e_vc_disable_vf(pf, vf); in i40e_ndo_set_vf_port_vlan()
2820 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_ndo_set_vf_port_vlan()
2876 vf->port_vlan_id = le16_to_cpu(vsi->info.pvid); in i40e_ndo_set_vf_port_vlan()
2899 struct i40e_vf *vf; in i40e_ndo_set_vf_bw() local
2916 vf = &(pf->vf[vf_id]); in i40e_ndo_set_vf_bw()
2917 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_ndo_set_vf_bw()
2918 if (!test_bit(I40E_VF_STAT_INIT, &vf->vf_states)) { in i40e_ndo_set_vf_bw()
2944 max_tx_rate, vf->vf_id); in i40e_ndo_set_vf_bw()
2964 vf->tx_rate = max_tx_rate; in i40e_ndo_set_vf_bw()
2983 struct i40e_vf *vf; in i40e_ndo_get_vf_config() local
2993 vf = &(pf->vf[vf_id]); in i40e_ndo_get_vf_config()
2995 vsi = pf->vsi[vf->lan_vsi_idx]; in i40e_ndo_get_vf_config()
2996 if (!test_bit(I40E_VF_STAT_INIT, &vf->vf_states)) { in i40e_ndo_get_vf_config()
3003 ivi->vf = vf_id; in i40e_ndo_get_vf_config()
3005 ether_addr_copy(ivi->mac, vf->default_lan_addr.addr); in i40e_ndo_get_vf_config()
3007 ivi->max_tx_rate = vf->tx_rate; in i40e_ndo_get_vf_config()
3012 if (vf->link_forced == false) in i40e_ndo_get_vf_config()
3014 else if (vf->link_up == true) in i40e_ndo_get_vf_config()
3018 ivi->spoofchk = vf->spoofchk; in i40e_ndo_get_vf_config()
3019 ivi->trusted = vf->trusted; in i40e_ndo_get_vf_config()
3040 struct i40e_vf *vf; in i40e_ndo_set_vf_link_state() local
3051 vf = &pf->vf[vf_id]; in i40e_ndo_set_vf_link_state()
3052 abs_vf_id = vf->vf_id + hw->func_caps.vf_base_id; in i40e_ndo_set_vf_link_state()
3059 vf->link_forced = false; in i40e_ndo_set_vf_link_state()
3066 vf->link_forced = true; in i40e_ndo_set_vf_link_state()
3067 vf->link_up = true; in i40e_ndo_set_vf_link_state()
3072 vf->link_forced = true; in i40e_ndo_set_vf_link_state()
3073 vf->link_up = false; in i40e_ndo_set_vf_link_state()
3104 struct i40e_vf *vf; in i40e_ndo_set_vf_spoofchk() local
3114 vf = &(pf->vf[vf_id]); in i40e_ndo_set_vf_spoofchk()
3115 if (!test_bit(I40E_VF_STAT_INIT, &vf->vf_states)) { in i40e_ndo_set_vf_spoofchk()
3122 if (enable == vf->spoofchk) in i40e_ndo_set_vf_spoofchk()
3125 vf->spoofchk = enable; in i40e_ndo_set_vf_spoofchk()
3127 ctxt.seid = pf->vsi[vf->lan_vsi_idx]->seid; in i40e_ndo_set_vf_spoofchk()
3155 struct i40e_vf *vf; in i40e_ndo_set_vf_trust() local
3169 vf = &pf->vf[vf_id]; in i40e_ndo_set_vf_trust()
3171 if (!vf) in i40e_ndo_set_vf_trust()
3173 if (setting == vf->trusted) in i40e_ndo_set_vf_trust()
3176 vf->trusted = setting; in i40e_ndo_set_vf_trust()
3177 i40e_vc_notify_vf_reset(vf); in i40e_ndo_set_vf_trust()
3178 i40e_reset_vf(vf, false); in i40e_ndo_set_vf_trust()