linux/drivers/net/ethernet/sfc
Edward Cree 51b35a454e sfc: skeleton EF100 PF driver
No TX or RX path, no MCDI, not even an ifup/down handler.
Besides stubs, the bulk of the patch deals with reading the Xilinx
 extended PCIe capability, which tells us where to find our BAR.

Though in the same module, EF100 has its own struct pci_driver,
 which is named sfc_ef100.

A small number of additional nic_type methods are added; those in the
 TX (tx_enqueue) and RX (rx_packet) paths are called through indirect
 call wrappers to minimise the performance impact.

Signed-off-by: Edward Cree <ecree@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2020-07-27 12:26:55 -07:00
..
falcon treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
bitfield.h sfc: extend bitfield macros up to POPULATE_DWORD_13 2020-06-29 17:37:48 -07:00
ef10_regs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ef10_sriov.c sfc: move vport_id to struct efx_nic 2020-05-11 13:31:49 -07:00
ef10_sriov.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ef10.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100_ethtool.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100_ethtool.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100_netdev.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100_netdev.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100_nic.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100_nic.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100_regs.h sfc_ef100: add EF100 register definitions 2020-07-27 12:26:55 -07:00
ef100_rx.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100_rx.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100_tx.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100_tx.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ef100.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
efx_channels.c sfc: assign TXQs without gaps 2020-07-02 14:47:40 -07:00
efx_channels.h sfc: move modparam 'rss_cpus' out of common channel code 2020-07-02 14:47:40 -07:00
efx_common.c sfc: initialise RSS context ID to 'no RSS context' in efx_init_struct() 2020-07-02 14:47:40 -07:00
efx_common.h sfc: support setting MTU even if not privileged to configure MAC fully 2020-07-02 14:47:39 -07:00
efx.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
efx.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
enum.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ethtool_common.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ethtool_common.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
ethtool.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
farch_regs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
farch.c sfc: assign TXQs without gaps 2020-07-02 14:47:40 -07:00
filter.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
io.h sfc_ef100: register accesses on EF100 2020-07-27 12:26:55 -07:00
Kconfig sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
Makefile sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
mcdi_filters.c sfc_ef100: helper function to set default RSS table of given size 2020-07-02 14:47:40 -07:00
mcdi_filters.h sfc_ef100: helper function to set default RSS table of given size 2020-07-02 14:47:40 -07:00
mcdi_functions.c sfc_ef100: populate BUFFER_SIZE_BYTES in INIT_RXQ 2020-07-02 14:47:40 -07:00
mcdi_functions.h sfc: commonise efx_fini_dmaq 2020-07-02 14:47:40 -07:00
mcdi_mon.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mcdi_pcol.h sfc: update MCDI protocol headers 2020-06-29 17:37:48 -07:00
mcdi_port_common.c sfc: commonise some MAC configuration code 2020-06-30 13:09:09 -07:00
mcdi_port_common.h sfc: move definition of EFX_MC_STATS_GENERATION_INVALID 2020-06-30 13:09:09 -07:00
mcdi_port.c sfc: commonise some MAC configuration code 2020-06-30 13:09:09 -07:00
mcdi_port.h sfc: move NIC-specific mcdi_port declarations out of common header 2020-06-30 13:09:09 -07:00
mcdi.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
mcdi.h sfc_ef100: NVRAM selftest support code 2020-07-02 14:47:40 -07:00
mtd.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
net_driver.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
nic_common.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
nic.c sfc: move definition of EFX_MC_STATS_GENERATION_INVALID 2020-06-30 13:09:09 -07:00
nic.h sfc: remove duplicate declaration of efx_enqueue_skb_tso() 2020-06-30 13:09:09 -07:00
ptp.c sfc: drop unnecessary list_empty 2020-07-27 10:09:57 -07:00
ptp.h sfc: split up nic.h 2020-06-29 17:37:48 -07:00
rx_common.c sfc: extend common GRO interface to support CHECKSUM_COMPLETE 2020-06-29 17:37:49 -07:00
rx_common.h sfc: commonise efx_sync_rx_buffer() 2020-06-30 13:09:09 -07:00
rx.c sfc: commonise efx_sync_rx_buffer() 2020-06-30 13:09:09 -07:00
selftest.c sfc: assign TXQs without gaps 2020-07-02 14:47:40 -07:00
selftest.h sfc: refactor selftest work init code 2020-01-10 11:24:37 -08:00
siena_sriov.c sfc: move channel alloc/removal code 2020-01-08 13:28:03 -08:00
siena_sriov.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
siena.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
sriov.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
sriov.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
tx_common.c sfc: don't call tx_limit_len if NIC type doesn't have one 2020-07-02 14:47:40 -07:00
tx_common.h sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
tx_tso.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
tx.c sfc: skeleton EF100 PF driver 2020-07-27 12:26:55 -07:00
tx.h sfc: remove duplicate declaration of efx_enqueue_skb_tso() 2020-06-30 13:09:09 -07:00
vfdi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
workarounds.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00