2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00
linux/drivers/net/ethernet/intel/igc
Andre Guedes aa7ca7266f igc: Refactor ethertype filtering code
The whole ethertype filtering code is implemented in igc_ethtool.c and
mixes logic from ethtool and core parts. This patch refactors it so core
logic is moved to igc_main.c, aligning the ethertype filtering code
organization with the rest of the filtering code from the driver (MAC
address and VLAN priority).

Besides moving code to igc_main.c, this patch also does some minor
improvements to the code. Below are some highlights.

In case all filters are already in use and the user tries to add another
filter, we return -ENOSPC instead of -EINVAL so a more meaningful error
code is provided. This also aligns with the behavior implemented in MAC
address filtering code.

With this code refactoring, 'etype_bitmap' array in struct igc_adapter
and 'etype_reg_index' in struct igc_nfc_filter are not needed anymore
and are removed.

Log messages are added to help debugging the ethertype filtering code.

Signed-off-by: Andre Guedes <andre.guedes@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2020-05-19 15:46:35 -07:00
..
igc_base.c igc: Use netdev log helpers in igc_base.c 2020-05-18 17:16:33 -07:00
igc_base.h igc: Add tx_csum offload functionality 2019-09-09 11:37:14 -07:00
igc_defines.h igc: Remove ethertype filter in PTP code 2020-05-19 15:35:42 -07:00
igc_diag.c igc: add support to eeprom, registers and link self-tests 2020-05-18 15:06:28 -07:00
igc_diag.h igc: add support to eeprom, registers and link self-tests 2020-05-18 15:06:28 -07:00
igc_dump.c igc: Use netdev log helpers in igc_dump.c 2020-05-18 17:16:26 -07:00
igc_ethtool.c igc: Refactor ethertype filtering code 2020-05-19 15:46:35 -07:00
igc_hw.h igc: Add new device IDs for i225 part 2020-04-19 11:34:11 -07:00
igc_i225.c igc: Add NVM support 2018-10-17 13:52:00 -07:00
igc_i225.h igc: Add NVM support 2018-10-17 13:52:00 -07:00
igc_mac.c igc: Add set_rx_mode support 2019-10-21 10:22:13 -07:00
igc_mac.h igc: remove IGC_REMOVED function 2020-05-19 15:01:48 -07:00
igc_main.c igc: Refactor ethertype filtering code 2020-05-19 15:46:35 -07:00
igc_nvm.c igc: Add NVM support 2018-10-17 13:52:00 -07:00
igc_nvm.h igc: Add NVM support 2018-10-17 13:52:00 -07:00
igc_phy.c igc: Add PHY power management control 2020-01-17 09:55:34 -08:00
igc_phy.h igc: Add setup link functionality 2018-10-17 13:56:55 -07:00
igc_ptp.c igc: Remove ethertype filter in PTP code 2020-05-19 15:35:42 -07:00
igc_regs.h igc: Remove duplicated IGC_RXPBS macro 2020-05-19 15:33:11 -07:00
igc_tsn.c igc: Add support for ETF offloading 2020-04-17 10:19:24 -07:00
igc_tsn.h igc: Add support for taprio offloading 2020-04-17 10:19:24 -07:00
igc.h igc: Refactor ethertype filtering code 2020-05-19 15:46:35 -07:00
Makefile igc: add support to eeprom, registers and link self-tests 2020-05-18 15:06:28 -07:00