linux/drivers/net/ethernet/sfc
Ben Hutchings cd2d5b529c sfc: Add SR-IOV back-end support for SFC9000 family
On the SFC9000 family, each port has 1024 Virtual Interfaces (VIs),
each with an RX queue, a TX queue, an event queue and a mailbox
register.  These may be assigned to up to 127 SR-IOV virtual functions
per port, with up to 64 VIs per VF.

We allocate an extra channel (IRQ and event queue only) to receive
requests from VF drivers.

There is a per-port limit of 4 concurrent RX queue flushes, and queue
flushes may be initiated by the MC in response to a Function Level
Reset (FLR) of a VF.  Therefore, when SR-IOV is in use, we submit all
flush requests via the MC.

The RSS indirection table is shared with VFs, so the number of RX
queues used in the PF is limited to the number of VIs per VF.

This is almost entirely the work of Steve Hodgson, formerly
shodgson@solarflare.com.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
2012-02-16 00:25:13 +00:00
..
bitfield.h sfc: Fix some formatting errors reported by checkpatch 2012-01-05 18:44:49 +00:00
efx.c sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
efx.h sfc: Add support for 'extra' channel types 2012-02-16 00:25:10 +00:00
enum.h
ethtool.c sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
falcon.c sfc: Allocate SRAM between buffer table and descriptor caches at init time 2012-02-16 00:25:12 +00:00
falcon_boards.c sfc: Const-qualify static data as appropriate, partly prompted by checkpatch 2012-01-09 17:08:13 +00:00
falcon_xmac.c sfc: Merge efx_mac_operations into efx_nic_type 2012-01-27 00:10:46 +00:00
filter.c sfc: Add support for TX MAC filters 2012-02-16 00:11:30 +00:00
filter.h sfc: Add support for TX MAC filters 2012-02-16 00:11:30 +00:00
io.h
Kconfig sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
Makefile sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
mcdi.c sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
mcdi.h sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
mcdi_mac.c sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
mcdi_mon.c sfc: Add hwmon driver for boards using SFC9000-family controllers 2012-01-27 00:10:53 +00:00
mcdi_pcol.h sfc: Update MCDI (firmware interface) definitions 2012-01-09 17:08:16 +00:00
mcdi_phy.c sfc: Update MCDI (firmware interface) definitions 2012-01-09 17:08:16 +00:00
mdio_10g.c sfc: Fix some formatting errors reported by checkpatch 2012-01-05 18:44:49 +00:00
mdio_10g.h
mtd.c sfc: Warn if unable to create MTDs 2012-02-13 23:40:50 +00:00
net_driver.h sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
nic.c sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
nic.h sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
phy.h
qt202x_phy.c sfc: Fix some formatting errors reported by checkpatch 2012-01-05 18:44:49 +00:00
regs.h sfc: Correct MAC filter bitfield definitions 2012-02-16 00:11:31 +00:00
rx.c sfc: Leave interrupts and event queues enabled whenever we can 2012-02-16 00:24:46 +00:00
selftest.c sfc: Remove remnants of on-load self-test 2012-01-27 00:10:55 +00:00
selftest.h sfc: Remove dependence on NAPI polling in efx_test_eventq_irq() 2012-01-27 00:10:51 +00:00
siena.c sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
siena_sriov.c sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
spi.h sfc: Fix some formatting errors reported by checkpatch 2012-01-05 18:44:49 +00:00
tenxpress.c sfc: Fix some formatting errors reported by checkpatch 2012-01-05 18:44:49 +00:00
tx.c sfc: Replace some literal constants with EFX_PAGE_SIZE/EFX_BUF_SIZE 2012-02-13 23:40:49 +00:00
txc43128_phy.c sfc: Const-qualify static data as appropriate, partly prompted by checkpatch 2012-01-09 17:08:13 +00:00
vfdi.h sfc: Add SR-IOV back-end support for SFC9000 family 2012-02-16 00:25:13 +00:00
workarounds.h