A DCF (Device Config Function) based approach is proposed where a device bound to the device's VF0 can act as a sole controlling entity to exercise advance functionality (such as switch, ACL) for rest of the VFs.
The DCF works as a standalone PMD to support this function, which shares the ice PMD flow control core function and the iavf virtchnl mailbox core module. This patchset is based on: [1] https://patchwork.dpdk.org/cover/66417/ update ice base code And it needs the coming iavf common lib update to compile, the modified ice flow function to work. Haiyue Wang (4): net/iavf: stop the PCI probe in DCF mode net/ice: export the DDP definition symbols net/ice: add the DCF framework doc: add release notes for Intel ice PMD doc/guides/nics/ice.rst | 47 ++ doc/guides/nics/img/ice_dcf.png | Bin 0 -> 39168 bytes doc/guides/rel_notes/release_20_05.rst | 5 + drivers/common/Makefile | 1 + drivers/net/iavf/iavf_ethdev.c | 41 ++ drivers/net/ice/Makefile | 6 + drivers/net/ice/ice_dcf.c | 651 +++++++++++++++++++++++++ drivers/net/ice/ice_dcf.h | 61 +++ drivers/net/ice/ice_dcf_ethdev.c | 319 ++++++++++++ drivers/net/ice/ice_dcf_ethdev.h | 33 ++ drivers/net/ice/ice_dcf_parent.c | 348 +++++++++++++ drivers/net/ice/ice_ethdev.c | 9 +- drivers/net/ice/ice_ethdev.h | 8 + drivers/net/ice/meson.build | 8 +- mk/rte.app.mk | 1 + 15 files changed, 1528 insertions(+), 10 deletions(-) create mode 100644 doc/guides/nics/img/ice_dcf.png create mode 100644 drivers/net/ice/ice_dcf.c create mode 100644 drivers/net/ice/ice_dcf.h create mode 100644 drivers/net/ice/ice_dcf_ethdev.c create mode 100644 drivers/net/ice/ice_dcf_ethdev.h create mode 100644 drivers/net/ice/ice_dcf_parent.c -- 2.25.1