Files
freebsd/sys/dev/e1000/if_igb_iov.h
T
Kevin Bowling a6999a1c94 net: Revert the ioctl SR-IOV VF status interface
A native route Netlink interface will replace this stack.

Requested by:	glebius

This reverts commit 1ccf543b21.

This reverts commit 2c04cfa148.

This reverts commit 2d6114f6d2.

This reverts commit d15f2551b2.

This reverts commit ceb282bbd6.

This reverts commit c30021fe0d.

This reverts commit fb1820d23a.

This reverts commit 8696cc600f.
2026-08-10 15:49:55 -07:00

60 lines
1.8 KiB
C

/*-
* SPDX-License-Identifier: BSD-3-Clause
*
* Copyright (c) 2010-2016, Intel Corporation
* Copyright (c) 2026 Kevin Bowling <[email protected]>
*/
#ifndef _IF_IGB_IOV_H_
#define _IF_IGB_IOV_H_
#define IGB_IOV_MAX_FRAME_SIZE 0x2600
#ifdef PCI_IOV
#include <sys/nv.h>
#include <sys/iov_schema.h>
#include <dev/pci/pci_iov.h>
int igb_iov_attach(struct e1000_softc *);
void igb_iov_detach(struct e1000_softc *);
bool igb_iov_supported(const struct e1000_softc *);
bool igb_iov_enabled(const struct e1000_softc *);
int igb_iov_validate(struct e1000_softc *, u16);
int igb_if_iov_init(if_ctx_t, u16, const nvlist_t *);
void igb_if_iov_uninit(if_ctx_t);
int igb_if_iov_vf_add(if_ctx_t, u16, const nvlist_t *);
void igb_iov_initialize(struct e1000_softc *);
void igb_iov_handle_mbx(struct e1000_softc *);
void igb_iov_handle_mdd(struct e1000_softc *);
void igb_iov_mdd_event(struct e1000_softc *);
void igb_iov_ping_all_vfs(struct e1000_softc *);
void igb_iov_reset_prepare(struct e1000_softc *);
u32 igb_iov_intr_mask(const struct e1000_softc *);
void igb_iov_intr_drain_stale(struct e1000_softc *);
void igb_iov_rebuild_mta(struct e1000_softc *);
void igb_iov_rebuild_vlan(struct e1000_softc *);
void igb_iov_update_pf_vmolr(struct e1000_softc *);
#else
#define igb_iov_attach(_sc) ((void)(_sc), 0)
#define igb_iov_detach(_sc) ((void)(_sc))
#define igb_iov_supported(_sc) (false)
#define igb_iov_enabled(_sc) (false)
#define igb_iov_initialize(_sc)
#define igb_iov_handle_mbx(_sc)
#define igb_iov_handle_mdd(_sc)
#define igb_iov_mdd_event(_sc)
#define igb_iov_ping_all_vfs(_sc)
#define igb_iov_reset_prepare(_sc)
#define igb_iov_intr_mask(_sc) (0)
#define igb_iov_intr_drain_stale(_sc) ((void)(_sc))
#define igb_iov_rebuild_mta(_sc)
#define igb_iov_rebuild_vlan(_sc)
#define igb_iov_update_pf_vmolr(_sc)
#endif
#endif /* _IF_IGB_IOV_H_ */