mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-23 22:47:45 +07:00
9297127b9c
This patch does two things. First it drops the unnecessary work of searching for enabled VFs when we first bring up the adapter and instead just uses pci_num_vf to determine how many VFs are enabled on the adapter. The second thing it does is drop the use of vfdev from the vf_data_storage structure. Instead we just search the entire system for a VF that has us as it's PF, and then if that VF is assigned we indicate that the VFs are assigned. This allows us to still check for assigned VFs even if the vfinfo allocation has failed, or vfinfo has been freed. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Acked-by: Greg Rose <gregory.v.rose@intel.com> Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com> Tested-by: Sibai Li <sibai.li@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
53 lines
2.2 KiB
C
53 lines
2.2 KiB
C
/*******************************************************************************
|
|
|
|
Intel 10 Gigabit PCI Express Linux driver
|
|
Copyright(c) 1999 - 2012 Intel Corporation.
|
|
|
|
This program is free software; you can redistribute it and/or modify it
|
|
under the terms and conditions of the GNU General Public License,
|
|
version 2, as published by the Free Software Foundation.
|
|
|
|
This program is distributed in the hope it will be useful, but WITHOUT
|
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
more details.
|
|
|
|
You should have received a copy of the GNU General Public License along with
|
|
this program; if not, write to the Free Software Foundation, Inc.,
|
|
51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
|
|
|
|
The full GNU General Public License is included in this distribution in
|
|
the file called "COPYING".
|
|
|
|
Contact Information:
|
|
e1000-devel Mailing List <e1000-devel@lists.sourceforge.net>
|
|
Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
|
|
|
|
*******************************************************************************/
|
|
|
|
#ifndef _IXGBE_SRIOV_H_
|
|
#define _IXGBE_SRIOV_H_
|
|
|
|
void ixgbe_restore_vf_multicasts(struct ixgbe_adapter *adapter);
|
|
void ixgbe_msg_task(struct ixgbe_adapter *adapter);
|
|
int ixgbe_vf_configuration(struct pci_dev *pdev, unsigned int event_mask);
|
|
void ixgbe_disable_tx_rx(struct ixgbe_adapter *adapter);
|
|
void ixgbe_ping_all_vfs(struct ixgbe_adapter *adapter);
|
|
int ixgbe_ndo_set_vf_mac(struct net_device *netdev, int queue, u8 *mac);
|
|
int ixgbe_ndo_set_vf_vlan(struct net_device *netdev, int queue, u16 vlan,
|
|
u8 qos);
|
|
int ixgbe_ndo_set_vf_bw(struct net_device *netdev, int vf, int tx_rate);
|
|
int ixgbe_ndo_set_vf_spoofchk(struct net_device *netdev, int vf, bool setting);
|
|
int ixgbe_ndo_get_vf_config(struct net_device *netdev,
|
|
int vf, struct ifla_vf_info *ivi);
|
|
void ixgbe_check_vf_rate_limit(struct ixgbe_adapter *adapter);
|
|
void ixgbe_disable_sriov(struct ixgbe_adapter *adapter);
|
|
#ifdef CONFIG_PCI_IOV
|
|
void ixgbe_enable_sriov(struct ixgbe_adapter *adapter,
|
|
const struct ixgbe_info *ii);
|
|
#endif
|
|
|
|
|
|
#endif /* _IXGBE_SRIOV_H_ */
|
|
|