Continuing on from [1] and [2], this series assembles the last pieces of the common codebase that will be used by the forthcoming EF100 driver. Patch #1 also adds a minor feature to EF10 (setting MTU on VFs) since EF10 supports the same MCDI extension which that feature will use on EF100. Patches #5 & #7, while they should have no externally-visible effect on driver functionality, change how that functionality is implemented and how the driver represents TXQ configuration internally, so are not mere cleanup/refactoring like most of these prerequisites have (from the perspective of the existing sfc driver) been.
[1]: https://lore.kernel.org/netdev/20200629.173812.1532344417590172093.da...@davemloft.net/T/ [2]: https://lore.kernel.org/netdev/20200630.130923.402514193016248355.da...@davemloft.net/T/ Edward Cree (15): sfc: support setting MTU even if not privileged to configure MAC fully sfc: remove max_interrupt_mode sfc: move modparam 'interrupt_mode' out of common channel code sfc: move modparam 'rss_cpus' out of common channel code sfc: make tx_queues_per_channel variable at runtime sfc: commonise netif_set_real_num[tr]x_queues calls sfc: assign TXQs without gaps sfc: don't call tx_limit_len if NIC type doesn't have one sfc: factor out efx_mcdi_filter_table_down() from _remove() sfc: commonise efx_fini_dmaq sfc: initialise RSS context ID to 'no RSS context' in efx_init_struct() sfc_ef100: add EF100 to NIC-revision enumeration sfc_ef100: populate BUFFER_SIZE_BYTES in INIT_RXQ sfc_ef100: NVRAM selftest support code sfc_ef100: helper function to set default RSS table of given size drivers/net/ethernet/sfc/ef10.c | 77 ++++++----------------- drivers/net/ethernet/sfc/efx.c | 14 ++--- drivers/net/ethernet/sfc/efx_channels.c | 61 ++++++++++-------- drivers/net/ethernet/sfc/efx_channels.h | 3 + drivers/net/ethernet/sfc/efx_common.c | 14 +++-- drivers/net/ethernet/sfc/efx_common.h | 2 +- drivers/net/ethernet/sfc/ethtool_common.c | 14 +++-- drivers/net/ethernet/sfc/farch.c | 6 +- drivers/net/ethernet/sfc/mcdi.c | 62 ++++++++++++++++++ drivers/net/ethernet/sfc/mcdi.h | 1 + drivers/net/ethernet/sfc/mcdi_filters.c | 58 +++++++++++++---- drivers/net/ethernet/sfc/mcdi_filters.h | 3 + drivers/net/ethernet/sfc/mcdi_functions.c | 57 ++++++++++++++--- drivers/net/ethernet/sfc/mcdi_functions.h | 1 + drivers/net/ethernet/sfc/net_driver.h | 44 ++++++------- drivers/net/ethernet/sfc/nic_common.h | 3 +- drivers/net/ethernet/sfc/selftest.c | 18 +++--- drivers/net/ethernet/sfc/siena.c | 4 +- drivers/net/ethernet/sfc/tx.c | 50 +++------------ drivers/net/ethernet/sfc/tx_common.c | 6 +- 20 files changed, 290 insertions(+), 208 deletions(-)