linux/drivers/net/ethernet
Jack Morgenstein ab9c17a009 mlx4_core: Modify driver initialization flow to accommodate SRIOV for Ethernet
1. Added module parameters sr_iov and probe_vf for controlling enablement of
   SRIOV mode.
2. Increased default max num-qps, num-mpts and log_num_macs to accomodate
   SRIOV mode
3. Added port_type_array as a module parameter to allow driver startup with
   ports configured as desired.
   In SRIOV mode, only ETH is supported, and this array is ignored; otherwise,
   for the case where the FW supports both port types (ETH and IB), the
   port_type_array parameter is used.
   By default, the port_type_array is set to configure both ports as IB.
4. When running in sriov mode, the master needs to initialize the ICM eq table
   to hold the eq's for itself and also for all the slaves.
5. mlx4_set_port_mask() now invoked from mlx4_init_hca, instead of in mlx4_dev_cap.
6. Introduced sriov VF (slave) device startup/teardown logic (mainly procedures
   mlx4_init_slave, mlx4_slave_exit, mlx4_slave_cap, mlx4_slave_exit and flow
   modifications in __mlx4_init_one, mlx4_init_hca, and mlx4_setup_hca).
   VFs obtain their startup information from the PF (master) device via the
   comm channel.
7. In SRIOV mode (both PF and VF), MSI_X must be enabled, or the driver
   aborts loading the device.
8. Do not allow setting port type via sysfs when running in SRIOV mode.
9. mlx4_get_ownership:  Currently, only one PF is supported by the driver.
   If the HCA is burned with FW which enables more than one PF, only one
   of the PFs is allowed to run.  The first one up grabs a FW ownership
   semaphone -- all other PFs will find that semaphore taken, and the
   driver will not allow them to run.

Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
Signed-off-by: Yevgeny Petrilin <yevgenyp@mellanox.co.il>
Signed-off-by: Liran Liss <liranl@mellanox.co.il>
Signed-off-by: Marcel Apfelbaum <marcela@mellanox.co.il>
Signed-off-by: David S. Miller <davem@davemloft.net>
2011-12-13 13:56:08 -05:00
..
3com sweep the floors and convert some .get_drvinfo routines to strlcpy 2011-11-08 15:11:57 -05:00
8390 net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
adaptec net: make vlan ndo_vlan_rx_[add/kill]_vid return error value 2011-12-08 19:52:37 -05:00
adi
aeroflex net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
alteon
amd net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
apple
atheros Sweep away N/A fw_version dustbunnies from the .get_drvinfo routine of a number of drivers 2011-11-22 16:43:32 -05:00
broadcom bnx2x: properly update skb when mtu > 1500 2011-12-13 13:30:45 -05:00
brocade net: make vlan ndo_vlan_rx_[add/kill]_vid return error value 2011-12-08 19:52:37 -05:00
cadence net/cadence: enable by default NET_ATMEL 2011-11-16 17:33:50 -05:00
calxeda net: add calxeda xgmac ethernet driver 2011-11-29 01:15:24 -05:00
chelsio cxgb3: Handle NULL dst neighbour in cxgb3_offload.c 2011-12-05 15:20:19 -05:00
cirrus
cisco net: make vlan ndo_vlan_rx_[add/kill]_vid return error value 2011-12-08 19:52:37 -05:00
davicom Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2011-12-02 13:49:21 -05:00
dec sweep the floors and convert some .get_drvinfo routines to strlcpy 2011-11-08 15:11:57 -05:00
dlink sweep the floors and convert some .get_drvinfo routines to strlcpy 2011-11-08 15:11:57 -05:00
emulex be2net: refactor/cleanup vf configuration code 2011-12-13 13:34:26 -05:00
faraday
freescale net/fec: make FEC driver buildable as module 2011-12-08 19:51:30 -05:00
fujitsu net: sweep-up some straglers in strlcpy conversion of .get_drvinfo routines 2011-11-16 17:38:55 -05:00
hp
i825xx sweep the floors and convert some .get_drvinfo routines to strlcpy 2011-11-08 15:11:57 -05:00
ibm net: make vlan ndo_vlan_rx_[add/kill]_vid return error value 2011-12-08 19:52:37 -05:00
icplus icplus: mdio_write(), remove unnecessary for loop 2011-12-01 12:54:46 -05:00
intel net: make vlan ndo_vlan_rx_[add/kill]_vid return error value 2011-12-08 19:52:37 -05:00
marvell sky2: add bql support 2011-11-29 20:49:21 -05:00
mellanox mlx4_core: Modify driver initialization flow to accommodate SRIOV for Ethernet 2011-12-13 13:56:08 -05:00
micrel net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
microchip
myricom net: introduce and use netdev_features_t for device features sets 2011-11-16 17:43:10 -05:00
natsemi net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
neterion net: make vlan ndo_vlan_rx_[add/kill]_vid return error value 2011-12-08 19:52:37 -05:00
nuvoton net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
nvidia forcedeath: Fix bql support for forcedeath 2011-12-02 12:39:12 -05:00
octeon
oki-semi Sweep away N/A fw_version dustbunnies from the .get_drvinfo routine of a number of drivers 2011-11-22 16:43:32 -05:00
packetengines
pasemi pasemi_mac: Fix building as module 2011-12-06 00:48:59 -05:00
qlogic net: make vlan ndo_vlan_rx_[add/kill]_vid return error value 2011-12-08 19:52:37 -05:00
racal
rdc r6040: fix check against MCRO_HASHEN bit in r6040_multicast_list 2011-11-16 20:24:52 -05:00
realtek Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2011-12-06 21:10:05 -05:00
renesas net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
seeq net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
sfc sfc: Use kcalloc instead of kzalloc to allocate array 2011-12-04 01:32:06 -05:00
sgi net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
silan
sis ethernet: Convert MAC_ADDR_LEN uses to ETH_ALEN 2011-11-16 20:23:17 -05:00
smsc net/smsc911x: Add regulator support 2011-11-29 18:36:56 -05:00
stmicro net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
sun niu: Fix typo in comment. 2011-12-02 12:37:33 -05:00
tehuti net: make vlan ndo_vlan_rx_[add/kill]_vid return error value 2011-12-08 19:52:37 -05:00
ti
tile
toshiba
tundra net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
via net: make vlan ndo_vlan_rx_[add/kill]_vid return error value 2011-12-08 19:52:37 -05:00
xilinx ll_temac: Use kcalloc instead of kzalloc to allocate array 2011-12-04 01:32:06 -05:00
xircom sweep the floors and convert some .get_drvinfo routines to strlcpy 2011-11-08 15:11:57 -05:00
xscale
dnet.c net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
dnet.h
ethoc.c net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
fealnx.c sweep the floors and convert some .get_drvinfo routines to strlcpy 2011-11-08 15:11:57 -05:00
jme.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2011-12-02 13:49:21 -05:00
jme.h jme: PHY configuration for compatible issue 2011-11-27 19:21:09 -05:00
Kconfig net: add calxeda xgmac ethernet driver 2011-11-29 01:15:24 -05:00
korina.c net/ethernet: convert drivers/net/ethernet/* to use module_platform_driver() 2011-11-29 00:25:05 -05:00
lantiq_etop.c NET: MIPS: lantiq: fix etop compile error 2011-11-14 14:34:54 -05:00
Makefile net: add calxeda xgmac ethernet driver 2011-11-29 01:15:24 -05:00
mipsnet.c
netx-eth.c
s6gmac.c