sfc: separate out SFC4000 ("Falcon") support into new sfc-falcon driver
authorEdward Cree <ecree@solarflare.com>
Mon, 28 Nov 2016 18:55:34 +0000 (18:55 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 30 Nov 2016 15:16:58 +0000 (10:16 -0500)
commit5a6681e22c1409089132085811857d6da828761b
tree3ba1f36288a43a6136ea62d366bbaead4ac150b6
parent6bb10c2bc6576d80d2e933a58b4210101e56c30c
sfc: separate out SFC4000 ("Falcon") support into new sfc-falcon driver

Rationale: The differences between Falcon and Siena are in many ways larger
 than those between Siena and EF10 (despite Siena being nominally "Falcon-
 architecture"); for instance, Falcon has no MCPU, so there is no MCDI.
 Removing Falcon support from the sfc driver should simplify the latter,
 and avoid the possibility of Falcon support being broken by changes to sfc
 (which are rarely if ever tested on Falcon, it being end-of-lifed hardware).

The sfc-falcon driver created in this changeset is essentially a copy of the
 sfc driver, but with Siena- and EF10-specific code, including MCDI, removed
 and with the "efx_" identifier prefix changed to "ef4_" (for "EFX 4000-
 series") to avoid collisions when both drivers are built-in.

This changeset removes Falcon from the sfc driver's PCI ID table; then in
 sfc I've removed obvious Falcon-related code: I removed the Falcon NIC
 functions, Falcon PHY code, and EFX_REV_FALCON_*, then fixed up everything
 that referenced them.

Also, increment minor version of both drivers (to 4.1).

For now, CONFIG_SFC selects CONFIG_SFC_FALCON, so that updating old configs
 doesn't cause Falcon support to disappear; but that should be undone at
 some point in the future.

Signed-off-by: Edward Cree <ecree@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
52 files changed:
drivers/net/ethernet/Kconfig
drivers/net/ethernet/Makefile
drivers/net/ethernet/sfc/Kconfig
drivers/net/ethernet/sfc/Makefile
drivers/net/ethernet/sfc/efx.c
drivers/net/ethernet/sfc/ethtool.c
drivers/net/ethernet/sfc/falcon.c [deleted file]
drivers/net/ethernet/sfc/falcon/Kconfig [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/Makefile [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/bitfield.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/efx.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/efx.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/enum.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/ethtool.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/falcon.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/falcon_boards.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/farch.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/farch_regs.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/filter.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/io.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/mdio_10g.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/mdio_10g.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/mtd.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/net_driver.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/nic.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/nic.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/phy.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/qt202x_phy.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/rx.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/selftest.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/selftest.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/tenxpress.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/tx.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/tx.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/txc43128_phy.c [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon/workarounds.h [new file with mode: 0644]
drivers/net/ethernet/sfc/falcon_boards.c [deleted file]
drivers/net/ethernet/sfc/farch.c
drivers/net/ethernet/sfc/mcdi.c
drivers/net/ethernet/sfc/mcdi_port.c
drivers/net/ethernet/sfc/mdio_10g.c [deleted file]
drivers/net/ethernet/sfc/mdio_10g.h [deleted file]
drivers/net/ethernet/sfc/net_driver.h
drivers/net/ethernet/sfc/nic.h
drivers/net/ethernet/sfc/phy.h [deleted file]
drivers/net/ethernet/sfc/qt202x_phy.c [deleted file]
drivers/net/ethernet/sfc/rx.c
drivers/net/ethernet/sfc/siena.c
drivers/net/ethernet/sfc/tenxpress.c [deleted file]
drivers/net/ethernet/sfc/tx.c
drivers/net/ethernet/sfc/txc43128_phy.c [deleted file]
drivers/net/ethernet/sfc/workarounds.h