Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/ixl/ixl_pf_iov.h
- This file was copied from sys/dev/ixl/i40e_devids.h.
Show All 26 Lines | /****************************************************************************** | ||||
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||||
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||||
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||||
POSSIBILITY OF SUCH DAMAGE. | POSSIBILITY OF SUCH DAMAGE. | ||||
******************************************************************************/ | ******************************************************************************/ | ||||
/*$FreeBSD$*/ | /*$FreeBSD$*/ | ||||
#ifndef _I40E_DEVIDS_H_ | |||||
#define _I40E_DEVIDS_H_ | |||||
/* Vendor ID */ | #ifndef _IXL_PF_IOV_H_ | ||||
#define I40E_INTEL_VENDOR_ID 0x8086 | #define _IXL_PF_IOV_H_ | ||||
/* Device IDs */ | #include "ixl_pf.h" | ||||
#define I40E_DEV_ID_SFP_XL710 0x1572 | |||||
#define I40E_DEV_ID_QEMU 0x1574 | |||||
#define I40E_DEV_ID_KX_B 0x1580 | |||||
#define I40E_DEV_ID_KX_C 0x1581 | |||||
#define I40E_DEV_ID_QSFP_A 0x1583 | |||||
#define I40E_DEV_ID_QSFP_B 0x1584 | |||||
#define I40E_DEV_ID_QSFP_C 0x1585 | |||||
#define I40E_DEV_ID_10G_BASE_T 0x1586 | |||||
#define I40E_DEV_ID_20G_KR2 0x1587 | |||||
#define I40E_DEV_ID_20G_KR2_A 0x1588 | |||||
#define I40E_DEV_ID_10G_BASE_T4 0x1589 | |||||
#define I40E_DEV_ID_VF 0x154C | |||||
#define I40E_DEV_ID_VF_HV 0x1571 | |||||
#define i40e_is_40G_device(d) ((d) == I40E_DEV_ID_QSFP_A || \ | #include <sys/nv.h> | ||||
(d) == I40E_DEV_ID_QSFP_B || \ | #include <sys/iov_schema.h> | ||||
(d) == I40E_DEV_ID_QSFP_C) | #include <dev/pci/pci_iov.h> | ||||
#endif /* _I40E_DEVIDS_H_ */ | /* Public functions */ | ||||
/* | |||||
* These three are DEVMETHODs required for SR-IOV PF support. | |||||
*/ | |||||
int ixl_iov_init(device_t dev, uint16_t num_vfs, const nvlist_t *params); | |||||
void ixl_iov_uninit(device_t dev); | |||||
int ixl_add_vf(device_t dev, uint16_t vfnum, const nvlist_t *params); | |||||
/* | |||||
* The standard PF driver needs to call these during normal execution when | |||||
* SR-IOV mode is active. | |||||
*/ | |||||
void ixl_initialize_sriov(struct ixl_pf *pf); | |||||
void ixl_handle_vf_msg(struct ixl_pf *pf, struct i40e_arq_event_info *event); | |||||
void ixl_handle_vflr(void *arg, int pending); | |||||
#endif /* _IXL_PF_IOV_H_ */ |