This patch set adds the support of a new net PMD, IntelĀ® Ethernet Network Adapters E810, also called ice.
Below features are enabled by this patch set, Basic features: 1, Basic device operations: probe, initialization, start/stop, configure, info get. 2, RX/TX queue operations: setup/release, start/stop, info get. 3, RX/TX. HW Offload features: 1, CRC Stripping/insertion. 2, L2/L3 checksum strip/insertion. 3, PVID set. 4, TPID change. 5, TSO (LRO/RSC not supported). Stats: 1, statics & xstatics. Switch functions: 1, MAC Filter Add/Delete. 2, VLAN Filter Add/Delete. Power saving: 1, RX interrupt mode. Misc: 1, Interrupt For Link Status. 2, firmware info query. 3, Jumbo Frame Support. 4, ptype check. 5, EEPROM check and set. --- v2: - Fix shared lib compile issue. - Add meson build support. - Update documents. - Fix more checkpatch issues. v3: - Removed the support of secondary process. - Splitted the base code to more patches. - Pass NULL to rte_zmalloc. - Changed some magic numbers to macros. - Fixed the wrong implementation of a specific bitmapi. v4: - Moved meson build forward. - Updated and splitted the document to related patches. - Updated the device info. - Removed unnecessary compile config. - Removed the code of ops rx_descriptor_done. - Adjusted the order of the functions. - Added error print for MAC setting. Paul M Stillwell Jr (14): net/ice/base: add registers for Intel(R) E800 Series NIC net/ice/base: add basic structures net/ice/base: add admin queue structures and commands net/ice/base: add sideband queue info net/ice/base: add device IDs for Intel(r) E800 Series NICs net/ice/base: add control queue information net/ice/base: add data center bridging (DCB) net/ice/base: add basic transmit scheduler net/ice/base: add virtual switch code net/ice/base: add code to work with the NVM net/ice/base: add common functions net/ice/base: add various headers net/ice/base: add protocol structures and defines net/ice/base: add structures for RX/TX queues Wenzhuo Lu (18): net/ice/base: add OS specific implementation net/ice: support device initialization net/ice: support device and queue ops net/ice: support getting device information net/ice: support packet type getting net/ice: support link update net/ice: support MTU setting net/ice: support MAC ops net/ice: support VLAN ops net/ice: support RSS net/ice: support RX queue interruption net/ice: support FW version getting net/ice: support EEPROM information getting net/ice: support statistics net/ice: support queue information getting net/ice: support basic RX/TX net/ice: support advance RX/TX net/ice: support descriptor ops MAINTAINERS | 8 + config/common_base | 9 + doc/guides/nics/features/ice.ini | 38 + doc/guides/nics/ice.rst | 104 + doc/guides/nics/index.rst | 1 + doc/guides/rel_notes/release_19_02.rst | 5 + drivers/net/Makefile | 1 + drivers/net/ice/Makefile | 55 + drivers/net/ice/base/README | 22 + drivers/net/ice/base/ice_adminq_cmd.h | 1891 ++++++ drivers/net/ice/base/ice_alloc.h | 22 + drivers/net/ice/base/ice_common.c | 3521 +++++++++++ drivers/net/ice/base/ice_common.h | 186 + drivers/net/ice/base/ice_controlq.c | 1098 ++++ drivers/net/ice/base/ice_controlq.h | 97 + drivers/net/ice/base/ice_dcb.c | 1385 +++++ drivers/net/ice/base/ice_dcb.h | 220 + drivers/net/ice/base/ice_devids.h | 17 + drivers/net/ice/base/ice_flex_type.h | 19 + drivers/net/ice/base/ice_flow.h | 8 + drivers/net/ice/base/ice_hw_autogen.h | 9815 ++++++++++++++++++++++++++++++ drivers/net/ice/base/ice_lan_tx_rx.h | 2291 +++++++ drivers/net/ice/base/ice_nvm.c | 387 ++ drivers/net/ice/base/ice_osdep.h | 524 ++ drivers/net/ice/base/ice_protocol_type.h | 248 + drivers/net/ice/base/ice_sbq_cmd.h | 93 + drivers/net/ice/base/ice_sched.c | 5380 ++++++++++++++++ drivers/net/ice/base/ice_sched.h | 210 + drivers/net/ice/base/ice_status.h | 45 + drivers/net/ice/base/ice_switch.c | 2812 +++++++++ drivers/net/ice/base/ice_switch.h | 333 + drivers/net/ice/base/ice_type.h | 869 +++ drivers/net/ice/base/meson.build | 27 + drivers/net/ice/ice_ethdev.c | 3242 ++++++++++ drivers/net/ice/ice_ethdev.h | 318 + drivers/net/ice/ice_lan_rxtx.c | 2872 +++++++++ drivers/net/ice/ice_logs.h | 45 + drivers/net/ice/ice_rxtx.h | 154 + drivers/net/ice/meson.build | 13 + drivers/net/ice/rte_pmd_ice_version.map | 4 + drivers/net/meson.build | 1 + mk/rte.app.mk | 1 + 42 files changed, 38391 insertions(+) create mode 100644 doc/guides/nics/features/ice.ini create mode 100644 doc/guides/nics/ice.rst create mode 100644 drivers/net/ice/Makefile create mode 100644 drivers/net/ice/base/README create mode 100644 drivers/net/ice/base/ice_adminq_cmd.h create mode 100644 drivers/net/ice/base/ice_alloc.h create mode 100644 drivers/net/ice/base/ice_common.c create mode 100644 drivers/net/ice/base/ice_common.h create mode 100644 drivers/net/ice/base/ice_controlq.c create mode 100644 drivers/net/ice/base/ice_controlq.h create mode 100644 drivers/net/ice/base/ice_dcb.c create mode 100644 drivers/net/ice/base/ice_dcb.h create mode 100644 drivers/net/ice/base/ice_devids.h create mode 100644 drivers/net/ice/base/ice_flex_type.h create mode 100644 drivers/net/ice/base/ice_flow.h create mode 100644 drivers/net/ice/base/ice_hw_autogen.h create mode 100644 drivers/net/ice/base/ice_lan_tx_rx.h create mode 100644 drivers/net/ice/base/ice_nvm.c create mode 100644 drivers/net/ice/base/ice_osdep.h create mode 100644 drivers/net/ice/base/ice_protocol_type.h create mode 100644 drivers/net/ice/base/ice_sbq_cmd.h create mode 100644 drivers/net/ice/base/ice_sched.c create mode 100644 drivers/net/ice/base/ice_sched.h create mode 100644 drivers/net/ice/base/ice_status.h create mode 100644 drivers/net/ice/base/ice_switch.c create mode 100644 drivers/net/ice/base/ice_switch.h create mode 100644 drivers/net/ice/base/ice_type.h create mode 100644 drivers/net/ice/base/meson.build create mode 100644 drivers/net/ice/ice_ethdev.c create mode 100644 drivers/net/ice/ice_ethdev.h create mode 100644 drivers/net/ice/ice_lan_rxtx.c create mode 100644 drivers/net/ice/ice_logs.h create mode 100644 drivers/net/ice/ice_rxtx.h create mode 100644 drivers/net/ice/meson.build create mode 100644 drivers/net/ice/rte_pmd_ice_version.map -- 1.9.3