Hello Anatoly, On Fri, Jan 31, 2025 at 1:59 PM Anatoly Burakov <anatoly.bura...@intel.com> wrote: > > Intel IGC and E1000 drivers are distinct, but they are actually generated > from the same base code. This patchset will merge together all e1000-derived > drivers into one common base, with three different ethdev driver > frontends (EM, IGB, and IGC). > > After the merge is done, base code is also updated to latest snapshot. > > Adam Ludkiewicz (1): > net/e1000/base: add WoL definitions > > Aleksandr Loktionov (1): > net/e1000/base: fix mac addr hash bit_shift > > Amir Avivi (1): > net/e1000/base: fix iterator type > > Anatoly Burakov (13): > net/e1000/base: add initial support for i225 > net/e1000/base: add link bringup support for i225 > net/e1000/base: add LED blink support for i225 > net/e1000/base: add NVM/EEPROM support for i225 > net/e1000/base: add LTR support in i225 > net/e1000/base: add eee support for i225 > net/e1000/base: add misc definitions for i225 > net/e1000: merge igc with e1000 > net/e1000: add missing i225 devices > net/e1000: add missing hardware support > net/e1000/base: correct minor formatting issues > net/e1000/base: correct mPHY access logic > net/e1000/base: update readme > > Barbara Skobiej (2): > net/e1000/base: fix reset for 82580 > net/e1000/base: fix data type in MAC hash > > Carolyn Wyborny (1): > net/e1000/base: skip MANC check for 82575 > > Dima Ruinskiy (4): > net/e1000/base: make e1000_access_phy_wakeup_reg_bm non-static > net/e1000/base: make debug prints more informative > net/e1000/base: hardcode bus parameters for ICH8 > net/e1000/base: fix unchecked return > > Evgeny Efimov (1): > net/e1000/base: add EEE common API function > > Jakub Buchocki (1): > net/e1000/base: fix uninitialized variable usage > > Marcin Jurczak (1): > net/e1000/base: remove non-inclusive language > > Nir Efrati (6): > net/e1000/base: workaround for packet loss > net/e1000/base: add definition for EXFWSM register > net/e1000/base: use longer ULP exit timeout on more HW > net/e1000/base: remove redundant access to RO register > net/e1000/base: introduce PHY ID retry mechanism > net/e1000/base: add PHY read/write retry mechanism > > Pawel Malinowski (1): > net/e1000/base: fix semaphore timeout value > > Piotr Kubaj (1): > net/e1000/base: rename NVM version variable > > Piotr Pietruszewski (1): > net/e1000/base: improve code flow in ICH8LAN > > Przemyslaw Ciesielski (1): > net/e1000/base: fix static analysis warnings > > Sasha Neftin (4): > net/e1000/base: add queue select definitions > net/e1000/base: add profile information field > net/e1000/base: add LPI counters > net/e1000/base: improve NVM checksum handling > > Vitaly Lifshits (2): > net/e1000: add support for more I219 devices > net/e1000/base: correct disable k1 logic > > drivers/net/intel/e1000/base/README | 8 +- > .../net/intel/e1000/base/e1000_80003es2lan.c | 10 +- > drivers/net/intel/e1000/base/e1000_82571.c | 4 +- > drivers/net/intel/e1000/base/e1000_82575.c | 21 +- > drivers/net/intel/e1000/base/e1000_82575.h | 29 - > drivers/net/intel/e1000/base/e1000_api.c | 76 +- > drivers/net/intel/e1000/base/e1000_api.h | 4 +- > drivers/net/intel/e1000/base/e1000_base.c | 3 +- > drivers/net/intel/e1000/base/e1000_defines.h | 259 +- > drivers/net/intel/e1000/base/e1000_hw.h | 86 +- > drivers/net/intel/e1000/base/e1000_i210.c | 14 +- > drivers/net/intel/e1000/base/e1000_i210.h | 4 + > drivers/net/intel/e1000/base/e1000_i225.c | 1384 ++++++ > drivers/net/intel/e1000/base/e1000_i225.h | 117 + > drivers/net/intel/e1000/base/e1000_ich8lan.c | 224 +- > drivers/net/intel/e1000/base/e1000_ich8lan.h | 3 +- > drivers/net/intel/e1000/base/e1000_mac.c | 62 +- > drivers/net/intel/e1000/base/e1000_mac.h | 2 +- > drivers/net/intel/e1000/base/e1000_nvm.c | 7 +- > drivers/net/intel/e1000/base/e1000_osdep.h | 33 +- > drivers/net/intel/e1000/base/e1000_phy.c | 447 +- > drivers/net/intel/e1000/base/e1000_phy.h | 21 + > drivers/net/intel/e1000/base/e1000_regs.h | 48 +- > drivers/net/intel/e1000/base/e1000_vf.c | 14 +- > drivers/net/intel/e1000/base/meson.build | 1 + > drivers/net/intel/e1000/em_ethdev.c | 36 +- > drivers/net/intel/e1000/igb_ethdev.c | 1 + > drivers/net/intel/{igc => e1000}/igc_ethdev.c | 914 ++-- > drivers/net/intel/{igc => e1000}/igc_ethdev.h | 32 +- > drivers/net/intel/{igc => e1000}/igc_filter.c | 84 +- > drivers/net/intel/{igc => e1000}/igc_filter.h | 0 > drivers/net/intel/{igc => e1000}/igc_flow.c | 2 +- > drivers/net/intel/{igc => e1000}/igc_flow.h | 0 > drivers/net/intel/{igc => e1000}/igc_logs.c | 2 +- > drivers/net/intel/{igc => e1000}/igc_txrx.c | 376 +- > drivers/net/intel/{igc => e1000}/igc_txrx.h | 6 +- > drivers/net/intel/e1000/meson.build | 11 + > drivers/net/intel/igc/base/README | 29 - > drivers/net/intel/igc/base/igc_82571.h | 36 - > drivers/net/intel/igc/base/igc_82575.h | 351 -- > drivers/net/intel/igc/base/igc_api.c | 1853 ------- > drivers/net/intel/igc/base/igc_api.h | 111 - > drivers/net/intel/igc/base/igc_base.c | 190 - > drivers/net/intel/igc/base/igc_base.h | 127 - > drivers/net/intel/igc/base/igc_defines.h | 1670 ------- > drivers/net/intel/igc/base/igc_hw.h | 1059 ---- > drivers/net/intel/igc/base/igc_i225.c | 1372 ----- > drivers/net/intel/igc/base/igc_i225.h | 110 - > drivers/net/intel/igc/base/igc_ich8lan.h | 296 -- > drivers/net/intel/igc/base/igc_mac.c | 2100 -------- > drivers/net/intel/igc/base/igc_mac.h | 64 - > drivers/net/intel/igc/base/igc_manage.c | 547 -- > drivers/net/intel/igc/base/igc_manage.h | 65 - > drivers/net/intel/igc/base/igc_nvm.c | 1324 ----- > drivers/net/intel/igc/base/igc_nvm.h | 69 - > drivers/net/intel/igc/base/igc_osdep.c | 64 - > drivers/net/intel/igc/base/igc_osdep.h | 163 - > drivers/net/intel/igc/base/igc_phy.c | 4420 ----------------- > drivers/net/intel/igc/base/igc_phy.h | 337 -- > drivers/net/intel/igc/base/igc_regs.h | 732 --- > drivers/net/intel/igc/base/meson.build | 19 - > drivers/net/intel/igc/igc_logs.h | 43 - > drivers/net/intel/igc/meson.build | 21 - > drivers/net/meson.build | 1 - > 64 files changed, 3300 insertions(+), 18218 deletions(-) > create mode 100644 drivers/net/intel/e1000/base/e1000_i225.c > create mode 100644 drivers/net/intel/e1000/base/e1000_i225.h > rename drivers/net/intel/{igc => e1000}/igc_ethdev.c (73%) > rename drivers/net/intel/{igc => e1000}/igc_ethdev.h (91%) > rename drivers/net/intel/{igc => e1000}/igc_filter.c (81%) > rename drivers/net/intel/{igc => e1000}/igc_filter.h (100%) > rename drivers/net/intel/{igc => e1000}/igc_flow.c (99%) > rename drivers/net/intel/{igc => e1000}/igc_flow.h (100%) > rename drivers/net/intel/{igc => e1000}/igc_logs.c (90%) > rename drivers/net/intel/{igc => e1000}/igc_txrx.c (87%) > rename drivers/net/intel/{igc => e1000}/igc_txrx.h (97%) > delete mode 100644 drivers/net/intel/igc/base/README > delete mode 100644 drivers/net/intel/igc/base/igc_82571.h > delete mode 100644 drivers/net/intel/igc/base/igc_82575.h > delete mode 100644 drivers/net/intel/igc/base/igc_api.c > delete mode 100644 drivers/net/intel/igc/base/igc_api.h > delete mode 100644 drivers/net/intel/igc/base/igc_base.c > delete mode 100644 drivers/net/intel/igc/base/igc_base.h > delete mode 100644 drivers/net/intel/igc/base/igc_defines.h > delete mode 100644 drivers/net/intel/igc/base/igc_hw.h > delete mode 100644 drivers/net/intel/igc/base/igc_i225.c > delete mode 100644 drivers/net/intel/igc/base/igc_i225.h > delete mode 100644 drivers/net/intel/igc/base/igc_ich8lan.h > delete mode 100644 drivers/net/intel/igc/base/igc_mac.c > delete mode 100644 drivers/net/intel/igc/base/igc_mac.h > delete mode 100644 drivers/net/intel/igc/base/igc_manage.c > delete mode 100644 drivers/net/intel/igc/base/igc_manage.h > delete mode 100644 drivers/net/intel/igc/base/igc_nvm.c > delete mode 100644 drivers/net/intel/igc/base/igc_nvm.h > delete mode 100644 drivers/net/intel/igc/base/igc_osdep.c > delete mode 100644 drivers/net/intel/igc/base/igc_osdep.h > delete mode 100644 drivers/net/intel/igc/base/igc_phy.c > delete mode 100644 drivers/net/intel/igc/base/igc_phy.h > delete mode 100644 drivers/net/intel/igc/base/igc_regs.h > delete mode 100644 drivers/net/intel/igc/base/meson.build > delete mode 100644 drivers/net/intel/igc/igc_logs.h > delete mode 100644 drivers/net/intel/igc/meson.build
Consolidation is a good thing, there are two small issues with this series though: - the ABI check (as it tracks all .so) reports that librte_net_igc.so disappeared: this will need some waiving, like Bruce did in his series: https://patchwork.dpdk.org/project/dpdk/patch/20250130151222.944561-2-bruce.richard...@intel.com/ - with this merge, "users" can't select net/igc compilation anymore and need to be aware that igc support now requires enabling net/e1000, please update the release notes to make this visible, There is also a strange build failure for mingw (see github test report). -- David Marchand