This patchset introduced the idpf (Infrastructure Data Path Function) PMD in DPDK for IntelĀ® IPU Ethernet ES2000 Series (Device ID: 0x1452). v2: fixed some coding style issues and did some refactors. v3: fixed some coding style issues and did some refactors. Junfeng Guo (15): common/idpf: introduce common library net/idpf: add support for device initialization net/idpf: add queue setup and release in single queue model net/idpf: add queue setup and release in split queue model net/idpf: add support for queue start and stop net/idpf: add support for device information get net/idpf: add support for packet type get net/idpf: add support for link status update net/idpf: add support for basic Rx/Tx datapath net/idpf: add support for Rx/Tx offloading net/idpf: add support for RSS net/idpf: add support for MTU configuration net/idpf: add support for write back based on ITR expire net/idpf: add AVX512 data path for single queue model net/idpf: add support for timestamp offload MAINTAINERS | 9 + doc/guides/nics/features/idpf.ini | 24 + doc/guides/nics/idpf.rst | 94 + doc/guides/nics/index.rst | 1 + doc/guides/rel_notes/release_22_11.rst | 5 + drivers/common/idpf/idpf_alloc.h | 22 + drivers/common/idpf/idpf_common.c | 364 +++ drivers/common/idpf/idpf_controlq.c | 691 +++++ drivers/common/idpf/idpf_controlq.h | 224 ++ drivers/common/idpf/idpf_controlq_api.h | 234 ++ drivers/common/idpf/idpf_controlq_setup.c | 179 ++ drivers/common/idpf/idpf_devids.h | 18 + drivers/common/idpf/idpf_lan_pf_regs.h | 134 + drivers/common/idpf/idpf_lan_txrx.h | 428 +++ drivers/common/idpf/idpf_lan_vf_regs.h | 114 + drivers/common/idpf/idpf_osdep.h | 365 +++ drivers/common/idpf/idpf_prototype.h | 45 + drivers/common/idpf/idpf_type.h | 106 + drivers/common/idpf/meson.build | 15 + drivers/common/idpf/siov_regs.h | 41 + drivers/common/idpf/version.map | 12 + drivers/common/idpf/virtchnl.h | 2866 +++++++++++++++++++ drivers/common/idpf/virtchnl2.h | 1462 ++++++++++ drivers/common/idpf/virtchnl2_lan_desc.h | 606 ++++ drivers/common/idpf/virtchnl_inline_ipsec.h | 567 ++++ drivers/common/meson.build | 1 + drivers/net/idpf/idpf_ethdev.c | 1244 ++++++++ drivers/net/idpf/idpf_ethdev.h | 271 ++ drivers/net/idpf/idpf_logs.h | 42 + drivers/net/idpf/idpf_rxtx.c | 2398 ++++++++++++++++ drivers/net/idpf/idpf_rxtx.h | 324 +++ drivers/net/idpf/idpf_rxtx_vec_avx512.c | 870 ++++++ drivers/net/idpf/idpf_rxtx_vec_common.h | 100 + drivers/net/idpf/idpf_vchnl.c | 1443 ++++++++++ drivers/net/idpf/meson.build | 45 + drivers/net/idpf/version.map | 3 + drivers/net/meson.build | 1 + 37 files changed, 15368 insertions(+) create mode 100644 doc/guides/nics/features/idpf.ini create mode 100644 doc/guides/nics/idpf.rst create mode 100644 drivers/common/idpf/idpf_alloc.h create mode 100644 drivers/common/idpf/idpf_common.c create mode 100644 drivers/common/idpf/idpf_controlq.c create mode 100644 drivers/common/idpf/idpf_controlq.h create mode 100644 drivers/common/idpf/idpf_controlq_api.h create mode 100644 drivers/common/idpf/idpf_controlq_setup.c create mode 100644 drivers/common/idpf/idpf_devids.h create mode 100644 drivers/common/idpf/idpf_lan_pf_regs.h create mode 100644 drivers/common/idpf/idpf_lan_txrx.h create mode 100644 drivers/common/idpf/idpf_lan_vf_regs.h create mode 100644 drivers/common/idpf/idpf_osdep.h create mode 100644 drivers/common/idpf/idpf_prototype.h create mode 100644 drivers/common/idpf/idpf_type.h create mode 100644 drivers/common/idpf/meson.build create mode 100644 drivers/common/idpf/siov_regs.h create mode 100644 drivers/common/idpf/version.map create mode 100644 drivers/common/idpf/virtchnl.h create mode 100644 drivers/common/idpf/virtchnl2.h create mode 100644 drivers/common/idpf/virtchnl2_lan_desc.h create mode 100644 drivers/common/idpf/virtchnl_inline_ipsec.h create mode 100644 drivers/net/idpf/idpf_ethdev.c create mode 100644 drivers/net/idpf/idpf_ethdev.h create mode 100644 drivers/net/idpf/idpf_logs.h create mode 100644 drivers/net/idpf/idpf_rxtx.c create mode 100644 drivers/net/idpf/idpf_rxtx.h create mode 100644 drivers/net/idpf/idpf_rxtx_vec_avx512.c create mode 100644 drivers/net/idpf/idpf_rxtx_vec_common.h create mode 100644 drivers/net/idpf/idpf_vchnl.c create mode 100644 drivers/net/idpf/meson.build create mode 100644 drivers/net/idpf/version.map -- 2.34.1