Merge branch 'ionic-add-sriov-support'
Shannon Nelson says:
====================
ionic: add sriov support
Set up the basic support for enabling SR-IOV devices in the
ionic driver. Since most of the management work happens in
the NIC firmware, the driver becomes mostly a pass-through
for the network stack commands that want to control and
configure the VFs.
v4: changed "vf too big" checks to use pci_num_vf()
changed from vf[] array of pointers of individually allocated
vf structs to single allocated vfs[] array of vf structs
added clean up of vfs[] on probe fail
added setup for vf stats dma
v3: added check in probe for pre-existing VFs
split out the alloc and dealloc of vf structs to better deal
with pre-existing VFs (left enabled on remove)
restored the checks for vf too big because of a potential
case where VFs are already enabled but driver failed to
alloc the vf structs
v2: use pci_num_vf() and kcalloc()
remove checks for vf too big
add locking for the VF operations
disable VFs in ionic_remove() if they are still running
====================
Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
- drivers/net/ethernet/pensando/ionic/ionic.h 16 additions, 1 deletiondrivers/net/ethernet/pensando/ionic/ionic.h
- drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 113 additions, 0 deletionsdrivers/net/ethernet/pensando/ionic/ionic_bus_pci.c
- drivers/net/ethernet/pensando/ionic/ionic_dev.c 58 additions, 0 deletionsdrivers/net/ethernet/pensando/ionic/ionic_dev.c
- drivers/net/ethernet/pensando/ionic/ionic_dev.h 7 additions, 0 deletionsdrivers/net/ethernet/pensando/ionic/ionic_dev.h
- drivers/net/ethernet/pensando/ionic/ionic_if.h 97 additions, 0 deletionsdrivers/net/ethernet/pensando/ionic/ionic_if.h
- drivers/net/ethernet/pensando/ionic/ionic_lif.c 240 additions, 7 deletionsdrivers/net/ethernet/pensando/ionic/ionic_lif.c
- drivers/net/ethernet/pensando/ionic/ionic_main.c 4 additions, 0 deletionsdrivers/net/ethernet/pensando/ionic/ionic_main.c
Please register or sign in to comment