Lines Matching refs:vf

42 			mv_list[i].vf = -1;  in ixgbe_alloc_vf_macvlans()
128 int vf = 0; in ixgbe_get_vfs() local
143 if (vf >= adapter->num_vfs) in ixgbe_get_vfs()
146 adapter->vfinfo[vf].vfdev = vfdev; in ixgbe_get_vfs()
147 ++vf; in ixgbe_get_vfs()
207 unsigned int num_vfs = adapter->num_vfs, vf; in ixgbe_disable_sriov() local
217 for (vf = 0; vf < num_vfs; ++vf) { in ixgbe_disable_sriov()
218 struct pci_dev *vfdev = adapter->vfinfo[vf].vfdev; in ixgbe_disable_sriov()
222 adapter->vfinfo[vf].vfdev = NULL; in ixgbe_disable_sriov()
363 u32 *msgbuf, u32 vf) in ixgbe_set_vf_multicasts() argument
368 struct vf_data_storage *vfinfo = &adapter->vfinfo[vf]; in ixgbe_set_vf_multicasts()
374 u32 vmolr = IXGBE_READ_REG(hw, IXGBE_VMOLR(vf)); in ixgbe_set_vf_multicasts()
402 IXGBE_WRITE_REG(hw, IXGBE_VMOLR(vf), vmolr); in ixgbe_set_vf_multicasts()
442 u32 vf) in ixgbe_set_vf_vlan() argument
458 err = hw->mac.ops.set_vfta(hw, vid, vf, !!add, false); in ixgbe_set_vf_vlan()
474 static int ixgbe_set_vf_lpe(struct ixgbe_adapter *adapter, u32 max_frame, u32 vf) in ixgbe_set_vf_lpe() argument
503 switch (adapter->vfinfo[vf].vf_api) { in ixgbe_set_vf_lpe()
527 vf_shift = vf % 32; in ixgbe_set_vf_lpe()
528 reg_offset = vf / 32; in ixgbe_set_vf_lpe()
559 static void ixgbe_set_vmolr(struct ixgbe_hw *hw, u32 vf, bool aupe) in ixgbe_set_vmolr() argument
561 u32 vmolr = IXGBE_READ_REG(hw, IXGBE_VMOLR(vf)); in ixgbe_set_vmolr()
567 IXGBE_WRITE_REG(hw, IXGBE_VMOLR(vf), vmolr); in ixgbe_set_vmolr()
570 static void ixgbe_clear_vmvir(struct ixgbe_adapter *adapter, u32 vf) in ixgbe_clear_vmvir() argument
574 IXGBE_WRITE_REG(hw, IXGBE_VMVIR(vf), 0); in ixgbe_clear_vmvir()
577 static void ixgbe_clear_vf_vlans(struct ixgbe_adapter *adapter, u32 vf) in ixgbe_clear_vf_vlans() argument
584 vlvfb_mask = BIT(vf % 32); in ixgbe_clear_vf_vlans()
589 u32 word = i * 2 + vf / 32; in ixgbe_clear_vf_vlans()
639 int vf, int index, unsigned char *mac_addr) in ixgbe_set_vf_macvlan() argument
648 if (entry->vf == vf) { in ixgbe_set_vf_macvlan()
649 entry->vf = -1; in ixgbe_set_vf_macvlan()
653 entry->vf_macvlan, vf); in ixgbe_set_vf_macvlan()
684 retval = ixgbe_add_mac_filter(adapter, mac_addr, vf); in ixgbe_set_vf_macvlan()
690 entry->vf = vf; in ixgbe_set_vf_macvlan()
696 static inline void ixgbe_vf_reset_event(struct ixgbe_adapter *adapter, u32 vf) in ixgbe_vf_reset_event() argument
700 struct vf_data_storage *vfinfo = &adapter->vfinfo[vf]; in ixgbe_vf_reset_event()
707 ixgbe_clear_vf_vlans(adapter, vf); in ixgbe_vf_reset_event()
710 ixgbe_set_vf_vlan(adapter, true, vfinfo->pf_vlan, vf); in ixgbe_vf_reset_event()
713 ixgbe_set_vmolr(hw, vf, !vfinfo->pf_vlan); in ixgbe_vf_reset_event()
717 ixgbe_clear_vmvir(adapter, vf); in ixgbe_vf_reset_event()
721 vfinfo->pf_qos, vf); in ixgbe_vf_reset_event()
724 adapter->default_up, vf); in ixgbe_vf_reset_event()
727 hw->mac.ops.set_vlan_anti_spoofing(hw, true, vf); in ixgbe_vf_reset_event()
728 hw->mac.ops.set_mac_anti_spoofing(hw, true, vf); in ixgbe_vf_reset_event()
733 adapter->vfinfo[vf].num_vf_mc_hashes = 0; in ixgbe_vf_reset_event()
736 ixgbe_ipsec_vf_clear(adapter, vf); in ixgbe_vf_reset_event()
741 ixgbe_del_mac_filter(adapter, adapter->vfinfo[vf].vf_mac_addresses, vf); in ixgbe_vf_reset_event()
742 ixgbe_set_vf_macvlan(adapter, vf, 0, NULL); in ixgbe_vf_reset_event()
745 adapter->vfinfo[vf].vf_api = ixgbe_mbox_api_10; in ixgbe_vf_reset_event()
749 unsigned int reg_idx = (vf * q_per_pool) + queue; in ixgbe_vf_reset_event()
765 static void ixgbe_vf_clear_mbx(struct ixgbe_adapter *adapter, u32 vf) in ixgbe_vf_clear_mbx() argument
772 IXGBE_WRITE_REG_ARRAY(hw, IXGBE_PFMBMEM(vf), word, 0); in ixgbe_vf_clear_mbx()
778 int vf, unsigned char *mac_addr) in ixgbe_set_vf_mac() argument
782 ixgbe_del_mac_filter(adapter, adapter->vfinfo[vf].vf_mac_addresses, vf); in ixgbe_set_vf_mac()
783 retval = ixgbe_add_mac_filter(adapter, mac_addr, vf); in ixgbe_set_vf_mac()
785 memcpy(adapter->vfinfo[vf].vf_mac_addresses, mac_addr, in ixgbe_set_vf_mac()
788 eth_zero_addr(adapter->vfinfo[vf].vf_mac_addresses); in ixgbe_set_vf_mac()
806 static inline void ixgbe_write_qde(struct ixgbe_adapter *adapter, u32 vf, in ixgbe_write_qde() argument
814 for (i = vf * q_per_pool; i < ((vf + 1) * q_per_pool); i++) { in ixgbe_write_qde()
834 static void ixgbe_set_vf_rx_tx(struct ixgbe_adapter *adapter, int vf) in ixgbe_set_vf_rx_tx() argument
840 vf_shift = vf % 32; in ixgbe_set_vf_rx_tx()
841 reg_offset = vf / 32; in ixgbe_set_vf_rx_tx()
846 if (adapter->vfinfo[vf].link_enable) { in ixgbe_set_vf_rx_tx()
878 static int ixgbe_vf_reset_msg(struct ixgbe_adapter *adapter, u32 vf) in ixgbe_vf_reset_msg() argument
882 unsigned char *vf_mac = adapter->vfinfo[vf].vf_mac_addresses; in ixgbe_vf_reset_msg()
889 e_info(probe, "VF Reset msg received from vf %d\n", vf); in ixgbe_vf_reset_msg()
892 ixgbe_vf_reset_event(adapter, vf); in ixgbe_vf_reset_msg()
894 ixgbe_vf_clear_mbx(adapter, vf); in ixgbe_vf_reset_msg()
898 ixgbe_set_vf_mac(adapter, vf, vf_mac); in ixgbe_vf_reset_msg()
900 vf_shift = vf % 32; in ixgbe_vf_reset_msg()
901 reg_offset = vf / 32; in ixgbe_vf_reset_msg()
905 if (adapter->vfinfo[vf].pf_vlan) in ixgbe_vf_reset_msg()
908 ixgbe_write_qde(adapter, vf, reg); in ixgbe_vf_reset_msg()
910 ixgbe_set_vf_rx_tx(adapter, vf); in ixgbe_vf_reset_msg()
913 adapter->vfinfo[vf].clear_to_send = true; in ixgbe_vf_reset_msg()
925 IXGBE_WRITE_REG(hw, IXGBE_PVFTDWBAHn(q_per_pool, vf, i), 0); in ixgbe_vf_reset_msg()
926 IXGBE_WRITE_REG(hw, IXGBE_PVFTDWBALn(q_per_pool, vf, i), 0); in ixgbe_vf_reset_msg()
931 if (!is_zero_ether_addr(vf_mac) && adapter->vfinfo[vf].pf_set_mac) { in ixgbe_vf_reset_msg()
943 ixgbe_write_mbx(hw, msgbuf, IXGBE_VF_PERMADDR_MSG_LEN, vf); in ixgbe_vf_reset_msg()
949 u32 *msgbuf, u32 vf) in ixgbe_set_vf_mac_addr() argument
954 e_warn(drv, "VF %d attempted to set invalid mac\n", vf); in ixgbe_set_vf_mac_addr()
958 if (adapter->vfinfo[vf].pf_set_mac && !adapter->vfinfo[vf].trusted && in ixgbe_set_vf_mac_addr()
959 !ether_addr_equal(adapter->vfinfo[vf].vf_mac_addresses, new_mac)) { in ixgbe_set_vf_mac_addr()
963 vf); in ixgbe_set_vf_mac_addr()
967 return ixgbe_set_vf_mac(adapter, vf, new_mac) < 0; in ixgbe_set_vf_mac_addr()
971 u32 *msgbuf, u32 vf) in ixgbe_set_vf_vlan_msg() argument
977 if (adapter->vfinfo[vf].pf_vlan || tcs) { in ixgbe_set_vf_vlan_msg()
981 vf); in ixgbe_set_vf_vlan_msg()
989 return ixgbe_set_vf_vlan(adapter, add, vid, vf); in ixgbe_set_vf_vlan_msg()
993 u32 *msgbuf, u32 vf) in ixgbe_set_vf_macvlan_msg() argument
1000 if (adapter->vfinfo[vf].pf_set_mac && !adapter->vfinfo[vf].trusted && in ixgbe_set_vf_macvlan_msg()
1004 vf); in ixgbe_set_vf_macvlan_msg()
1011 e_warn(drv, "VF %d attempted to set invalid mac\n", vf); in ixgbe_set_vf_macvlan_msg()
1019 if (adapter->vfinfo[vf].spoofchk_enabled) { in ixgbe_set_vf_macvlan_msg()
1022 hw->mac.ops.set_mac_anti_spoofing(hw, false, vf); in ixgbe_set_vf_macvlan_msg()
1023 hw->mac.ops.set_vlan_anti_spoofing(hw, false, vf); in ixgbe_set_vf_macvlan_msg()
1027 err = ixgbe_set_vf_macvlan(adapter, vf, index, new_mac); in ixgbe_set_vf_macvlan_msg()
1031 vf); in ixgbe_set_vf_macvlan_msg()
1037 u32 *msgbuf, u32 vf) in ixgbe_negotiate_vf_api() argument
1047 adapter->vfinfo[vf].vf_api = api; in ixgbe_negotiate_vf_api()
1053 e_info(drv, "VF %d requested invalid api version %u\n", vf, api); in ixgbe_negotiate_vf_api()
1059 u32 *msgbuf, u32 vf) in ixgbe_get_vf_queues() argument
1067 switch (adapter->vfinfo[vf].vf_api) { in ixgbe_get_vf_queues()
1089 else if (adapter->vfinfo[vf].pf_vlan || adapter->vfinfo[vf].pf_qos) in ixgbe_get_vf_queues()
1100 static int ixgbe_get_vf_reta(struct ixgbe_adapter *adapter, u32 *msgbuf, u32 vf) in ixgbe_get_vf_reta() argument
1108 if (!adapter->vfinfo[vf].rss_query_enabled) in ixgbe_get_vf_reta()
1112 switch (adapter->vfinfo[vf].vf_api) { in ixgbe_get_vf_reta()
1136 u32 *msgbuf, u32 vf) in ixgbe_get_vf_rss_key() argument
1141 if (!adapter->vfinfo[vf].rss_query_enabled) in ixgbe_get_vf_rss_key()
1145 switch (adapter->vfinfo[vf].vf_api) { in ixgbe_get_vf_rss_key()
1160 u32 *msgbuf, u32 vf) in ixgbe_update_vf_xcast_mode() argument
1167 switch (adapter->vfinfo[vf].vf_api) { in ixgbe_update_vf_xcast_mode()
1181 !adapter->vfinfo[vf].trusted) { in ixgbe_update_vf_xcast_mode()
1185 if (adapter->vfinfo[vf].xcast_mode == xcast_mode) in ixgbe_update_vf_xcast_mode()
1222 vmolr = IXGBE_READ_REG(hw, IXGBE_VMOLR(vf)); in ixgbe_update_vf_xcast_mode()
1225 IXGBE_WRITE_REG(hw, IXGBE_VMOLR(vf), vmolr); in ixgbe_update_vf_xcast_mode()
1227 adapter->vfinfo[vf].xcast_mode = xcast_mode; in ixgbe_update_vf_xcast_mode()
1236 u32 *msgbuf, u32 vf) in ixgbe_get_vf_link_state() argument
1241 switch (adapter->vfinfo[vf].vf_api) { in ixgbe_get_vf_link_state()
1250 *link_state = adapter->vfinfo[vf].link_enable; in ixgbe_get_vf_link_state()
1255 static int ixgbe_rcv_msg_from_vf(struct ixgbe_adapter *adapter, u32 vf) in ixgbe_rcv_msg_from_vf() argument
1262 retval = ixgbe_read_mbx(hw, msgbuf, mbx_size, vf); in ixgbe_rcv_msg_from_vf()
1277 return ixgbe_vf_reset_msg(adapter, vf); in ixgbe_rcv_msg_from_vf()
1283 if (!adapter->vfinfo[vf].clear_to_send) { in ixgbe_rcv_msg_from_vf()
1285 ixgbe_write_mbx(hw, msgbuf, 1, vf); in ixgbe_rcv_msg_from_vf()
1291 retval = ixgbe_set_vf_mac_addr(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1294 retval = ixgbe_set_vf_multicasts(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1297 retval = ixgbe_set_vf_vlan_msg(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1300 retval = ixgbe_set_vf_lpe(adapter, msgbuf[1], vf); in ixgbe_rcv_msg_from_vf()
1303 retval = ixgbe_set_vf_macvlan_msg(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1306 retval = ixgbe_negotiate_vf_api(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1309 retval = ixgbe_get_vf_queues(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1312 retval = ixgbe_get_vf_reta(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1315 retval = ixgbe_get_vf_rss_key(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1318 retval = ixgbe_update_vf_xcast_mode(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1321 retval = ixgbe_get_vf_link_state(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1324 retval = ixgbe_ipsec_vf_add_sa(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1327 retval = ixgbe_ipsec_vf_del_sa(adapter, msgbuf, vf); in ixgbe_rcv_msg_from_vf()
1343 ixgbe_write_mbx(hw, msgbuf, mbx_size, vf); in ixgbe_rcv_msg_from_vf()
1348 static void ixgbe_rcv_ack_from_vf(struct ixgbe_adapter *adapter, u32 vf) in ixgbe_rcv_ack_from_vf() argument
1354 if (!adapter->vfinfo[vf].clear_to_send) in ixgbe_rcv_ack_from_vf()
1355 ixgbe_write_mbx(hw, &msg, 1, vf); in ixgbe_rcv_ack_from_vf()
1362 u32 vf; in ixgbe_msg_task() local
1365 for (vf = 0; vf < adapter->num_vfs; vf++) { in ixgbe_msg_task()
1367 if (!ixgbe_check_for_rst(hw, vf)) in ixgbe_msg_task()
1368 ixgbe_vf_reset_event(adapter, vf); in ixgbe_msg_task()
1371 if (!ixgbe_check_for_msg(hw, vf)) in ixgbe_msg_task()
1372 ixgbe_rcv_msg_from_vf(adapter, vf); in ixgbe_msg_task()
1375 if (!ixgbe_check_for_ack(hw, vf)) in ixgbe_msg_task()
1376 ixgbe_rcv_ack_from_vf(adapter, vf); in ixgbe_msg_task()
1381 static inline void ixgbe_ping_vf(struct ixgbe_adapter *adapter, int vf) in ixgbe_ping_vf() argument
1387 if (adapter->vfinfo[vf].clear_to_send) in ixgbe_ping_vf()
1389 ixgbe_write_mbx(hw, &ping, 1, vf); in ixgbe_ping_vf()
1421 int ixgbe_ndo_set_vf_mac(struct net_device *netdev, int vf, u8 *mac) in ixgbe_ndo_set_vf_mac() argument
1426 if (vf >= adapter->num_vfs) in ixgbe_ndo_set_vf_mac()
1431 mac, vf); in ixgbe_ndo_set_vf_mac()
1434 retval = ixgbe_set_vf_mac(adapter, vf, mac); in ixgbe_ndo_set_vf_mac()
1436 adapter->vfinfo[vf].pf_set_mac = true; in ixgbe_ndo_set_vf_mac()
1447 adapter->vfinfo[vf].vf_mac_addresses; in ixgbe_ndo_set_vf_mac()
1453 dev_info(&adapter->pdev->dev, "removing MAC on VF %d\n", vf); in ixgbe_ndo_set_vf_mac()
1455 retval = ixgbe_del_mac_filter(adapter, vf_mac_addr, vf); in ixgbe_ndo_set_vf_mac()
1457 adapter->vfinfo[vf].pf_set_mac = false; in ixgbe_ndo_set_vf_mac()
1469 static int ixgbe_enable_port_vlan(struct ixgbe_adapter *adapter, int vf, in ixgbe_enable_port_vlan() argument
1475 err = ixgbe_set_vf_vlan(adapter, true, vlan, vf); in ixgbe_enable_port_vlan()
1480 ixgbe_set_vf_vlan(adapter, false, 0, vf); in ixgbe_enable_port_vlan()
1482 ixgbe_set_vmvir(adapter, vlan, qos, vf); in ixgbe_enable_port_vlan()
1483 ixgbe_set_vmolr(hw, vf, false); in ixgbe_enable_port_vlan()
1487 ixgbe_write_qde(adapter, vf, IXGBE_QDE_ENABLE | in ixgbe_enable_port_vlan()
1490 adapter->vfinfo[vf].pf_vlan = vlan; in ixgbe_enable_port_vlan()
1491 adapter->vfinfo[vf].pf_qos = qos; in ixgbe_enable_port_vlan()
1493 "Setting VLAN %d, QOS 0x%x on VF %d\n", vlan, qos, vf); in ixgbe_enable_port_vlan()
1505 static int ixgbe_disable_port_vlan(struct ixgbe_adapter *adapter, int vf) in ixgbe_disable_port_vlan() argument
1511 adapter->vfinfo[vf].pf_vlan, vf); in ixgbe_disable_port_vlan()
1513 ixgbe_set_vf_vlan(adapter, true, 0, vf); in ixgbe_disable_port_vlan()
1514 ixgbe_clear_vmvir(adapter, vf); in ixgbe_disable_port_vlan()
1515 ixgbe_set_vmolr(hw, vf, true); in ixgbe_disable_port_vlan()
1519 ixgbe_write_qde(adapter, vf, IXGBE_QDE_ENABLE); in ixgbe_disable_port_vlan()
1521 adapter->vfinfo[vf].pf_vlan = 0; in ixgbe_disable_port_vlan()
1522 adapter->vfinfo[vf].pf_qos = 0; in ixgbe_disable_port_vlan()
1527 int ixgbe_ndo_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan, in ixgbe_ndo_set_vf_vlan() argument
1533 if ((vf >= adapter->num_vfs) || (vlan > 4095) || (qos > 7)) in ixgbe_ndo_set_vf_vlan()
1545 if (adapter->vfinfo[vf].pf_vlan) in ixgbe_ndo_set_vf_vlan()
1546 err = ixgbe_disable_port_vlan(adapter, vf); in ixgbe_ndo_set_vf_vlan()
1549 err = ixgbe_enable_port_vlan(adapter, vf, vlan, qos); in ixgbe_ndo_set_vf_vlan()
1551 err = ixgbe_disable_port_vlan(adapter, vf); in ixgbe_ndo_set_vf_vlan()
1572 static void ixgbe_set_vf_rate_limit(struct ixgbe_adapter *adapter, int vf) in ixgbe_set_vf_rate_limit() argument
1578 u16 tx_rate = adapter->vfinfo[vf].tx_rate; in ixgbe_set_vf_rate_limit()
1617 unsigned int reg_idx = (vf * queues_per_pool) + queue; in ixgbe_set_vf_rate_limit()
1646 int ixgbe_ndo_set_vf_bw(struct net_device *netdev, int vf, int min_tx_rate, in ixgbe_ndo_set_vf_bw() argument
1653 if (vf >= adapter->num_vfs) in ixgbe_ndo_set_vf_bw()
1674 adapter->vfinfo[vf].tx_rate = max_tx_rate; in ixgbe_ndo_set_vf_bw()
1677 ixgbe_set_vf_rate_limit(adapter, vf); in ixgbe_ndo_set_vf_bw()
1682 int ixgbe_ndo_set_vf_spoofchk(struct net_device *netdev, int vf, bool setting) in ixgbe_ndo_set_vf_spoofchk() argument
1687 if (vf >= adapter->num_vfs) in ixgbe_ndo_set_vf_spoofchk()
1690 adapter->vfinfo[vf].spoofchk_enabled = setting; in ixgbe_ndo_set_vf_spoofchk()
1693 hw->mac.ops.set_mac_anti_spoofing(hw, setting, vf); in ixgbe_ndo_set_vf_spoofchk()
1696 hw->mac.ops.set_vlan_anti_spoofing(hw, setting, vf); in ixgbe_ndo_set_vf_spoofchk()
1712 hw->mac.ops.set_ethertype_anti_spoofing(hw, setting, vf); in ixgbe_ndo_set_vf_spoofchk()
1726 void ixgbe_set_vf_link_state(struct ixgbe_adapter *adapter, int vf, int state) in ixgbe_set_vf_link_state() argument
1728 adapter->vfinfo[vf].link_state = state; in ixgbe_set_vf_link_state()
1733 adapter->vfinfo[vf].link_enable = false; in ixgbe_set_vf_link_state()
1735 adapter->vfinfo[vf].link_enable = true; in ixgbe_set_vf_link_state()
1738 adapter->vfinfo[vf].link_enable = true; in ixgbe_set_vf_link_state()
1741 adapter->vfinfo[vf].link_enable = false; in ixgbe_set_vf_link_state()
1745 ixgbe_set_vf_rx_tx(adapter, vf); in ixgbe_set_vf_link_state()
1748 adapter->vfinfo[vf].clear_to_send = false; in ixgbe_set_vf_link_state()
1749 ixgbe_ping_vf(adapter, vf); in ixgbe_set_vf_link_state()
1760 int ixgbe_ndo_set_vf_link_state(struct net_device *netdev, int vf, int state) in ixgbe_ndo_set_vf_link_state() argument
1765 if (vf < 0 || vf >= adapter->num_vfs) { in ixgbe_ndo_set_vf_link_state()
1767 "NDO set VF link - invalid VF identifier %d\n", vf); in ixgbe_ndo_set_vf_link_state()
1775 vf, state); in ixgbe_ndo_set_vf_link_state()
1779 "NDO set VF %d link state disable\n", vf); in ixgbe_ndo_set_vf_link_state()
1780 ixgbe_set_vf_link_state(adapter, vf, state); in ixgbe_ndo_set_vf_link_state()
1784 "NDO set VF %d link state auto\n", vf); in ixgbe_ndo_set_vf_link_state()
1785 ixgbe_set_vf_link_state(adapter, vf, state); in ixgbe_ndo_set_vf_link_state()
1789 "NDO set VF %d - invalid link state %d\n", vf, state); in ixgbe_ndo_set_vf_link_state()
1796 int ixgbe_ndo_set_vf_rss_query_en(struct net_device *netdev, int vf, in ixgbe_ndo_set_vf_rss_query_en() argument
1808 if (vf >= adapter->num_vfs) in ixgbe_ndo_set_vf_rss_query_en()
1811 adapter->vfinfo[vf].rss_query_enabled = setting; in ixgbe_ndo_set_vf_rss_query_en()
1816 int ixgbe_ndo_set_vf_trust(struct net_device *netdev, int vf, bool setting) in ixgbe_ndo_set_vf_trust() argument
1820 if (vf >= adapter->num_vfs) in ixgbe_ndo_set_vf_trust()
1824 if (adapter->vfinfo[vf].trusted == setting) in ixgbe_ndo_set_vf_trust()
1827 adapter->vfinfo[vf].trusted = setting; in ixgbe_ndo_set_vf_trust()
1830 adapter->vfinfo[vf].clear_to_send = false; in ixgbe_ndo_set_vf_trust()
1831 ixgbe_ping_vf(adapter, vf); in ixgbe_ndo_set_vf_trust()
1833 e_info(drv, "VF %u is %strusted\n", vf, setting ? "" : "not "); in ixgbe_ndo_set_vf_trust()
1839 int vf, struct ifla_vf_info *ivi) in ixgbe_ndo_get_vf_config() argument
1842 if (vf >= adapter->num_vfs) in ixgbe_ndo_get_vf_config()
1844 ivi->vf = vf; in ixgbe_ndo_get_vf_config()
1845 memcpy(&ivi->mac, adapter->vfinfo[vf].vf_mac_addresses, ETH_ALEN); in ixgbe_ndo_get_vf_config()
1846 ivi->max_tx_rate = adapter->vfinfo[vf].tx_rate; in ixgbe_ndo_get_vf_config()
1848 ivi->vlan = adapter->vfinfo[vf].pf_vlan; in ixgbe_ndo_get_vf_config()
1849 ivi->qos = adapter->vfinfo[vf].pf_qos; in ixgbe_ndo_get_vf_config()
1850 ivi->spoofchk = adapter->vfinfo[vf].spoofchk_enabled; in ixgbe_ndo_get_vf_config()
1851 ivi->rss_query_en = adapter->vfinfo[vf].rss_query_enabled; in ixgbe_ndo_get_vf_config()
1852 ivi->trusted = adapter->vfinfo[vf].trusted; in ixgbe_ndo_get_vf_config()