This series covers the support for the following: - new port modes; - loopback modes, previously missing; - new speed/link modes; - several FEC modes; - multi-rate transceivers; and also cleans up and optimizes several related parts of code. v2 (from [1]): - added a patch (#0010) that drops discussed dead struct member; - addressed checkpatch complaints on #0014 (former #0013); - rebased on top of latest net-next; - no other changes. [1] https://lore.kernel.org/netdev/20200716115446.994-1-alobakin@xxxxxxxxxxx/ Alexander Lobakin (14): qed: convert link mode from u32 to bitmap qed: reformat public_port::transceiver_data a bit qed: add support for multi-rate transceivers qed: use transceiver data to fill link partner's advertising speeds qed: reformat several structures a bit qed: add support for Forward Error Correction qede: format qede{,_vf}_ethtool_ops qede: introduce support for FEC control qed: reformat several structures a bit qed: remove unused qed_hw_info::port_mode and QED_PORT_MODE qed: add support for new port modes qed: add missing loopback modes qed: populate supported link modes maps on module init qed/qede: add support for the extended speed and FEC modes drivers/net/ethernet/qlogic/qed/qed.h | 125 ++- drivers/net/ethernet/qlogic/qed/qed_dev.c | 172 +++- drivers/net/ethernet/qlogic/qed/qed_hsi.h | 786 ++++++++++-------- drivers/net/ethernet/qlogic/qed/qed_main.c | 764 +++++++++++++---- drivers/net/ethernet/qlogic/qed/qed_mcp.c | 126 ++- drivers/net/ethernet/qlogic/qed/qed_mcp.h | 146 ++-- .../net/ethernet/qlogic/qede/qede_ethtool.c | 468 ++++++----- drivers/scsi/qedf/qedf_main.c | 77 +- include/linux/qed/qed_if.h | 185 +++-- 9 files changed, 1879 insertions(+), 970 deletions(-) -- Netdev maintainers, patch #0001 affects qedf under scsi tree, but could you take it through yours after all necessary acks? It will break incremental buildability and bisecting otherwise. Thanks. -- 2.25.1