[dpdk-dev] [PATCH v6 00/14] dd new AVF PMD

Wenzhuo Lu wenzhuo.lu at intel.com
Wed Jan 10 07:15:47 CET 2018


Adaptive Virtual Function (AVF) Driver is VF driver which supports for all future Intel devices without requiring a VM update.
It promises the basic high speed connectivity. And since this happens to be an adaptive VF driver, every new drop of the VF driver would add more and more advanced features that can be turned on in the VM if the underlying HW device supports those advanced features. Most importantly in a device agnostic way without ever compromising on the base functionality. All the AVF's interface need to follow AVF spec, and AVF compliant interface is supported start from the Intel® Ethernet Controller 710 Series.

This patch set adds AVF PMD supporting.
 - Device initialization
 - Queue setup and Device start
 - Basic Rx and Tx.
 - MAC address offload feature
 - Vlan offload feature
 - RSS offload feature
 - Vectored Rx and Tx func
 - Bulk allocate Rx func
 - Rx interrupt support
 - Statistics query

v6:
 - handle ICC compile warning on 32bit machine.

v5:
 - some slight change for the comments.
 - merge the doc update patch.

v4:
 - update the base code to the newest.

v3:
 - change the license announcement.
 - update the related document.
 - resolve the checkpatch error, warning and some check.
 - handle the comments from the community.

v2:
 - rebase to 17.11
 - add vectored Rx and Tx func
 - add bulk allocate Rx func
 - add Rx interrupt support
 - add statistics query
 - fix coding style issue
 - remove extra compile flags in Makefile
 - add doc to list avf PMD features
 - fix lut setting when rss is disabled
 - fix log init missing
 - remove rx_descriptor_done

Jingjing Wu (12):
  net/avf/base: add base code for avf PMD
  net/avf: initialization of avf PMD
  net/avf: enable queue and device
  net/avf: enable link status update
  net/avf: support stats
  net/avf: enable MAC VLAN and promisc ops
  net/avf: enable ops for RSS setting
  net/avf: enable ops for MTU setting
  net/avf: enable ops to check queue info and status
  net/i40e: support AVF basic interface
  net/avf: enable sse vector Rx Tx func
  net/avf: enable Rx interrupt support

Wenzhuo Lu (2):
  net/avf: enable basic Rx Tx func
  net/avf: enable bulk allocate Rx func

 MAINTAINERS                             |    6 +
 config/common_base                      |   10 +
 doc/guides/nics/features/avf.ini        |   37 +
 doc/guides/nics/features/avf_vec.ini    |   37 +
 doc/guides/nics/intel_vf.rst            |   20 +-
 doc/guides/rel_notes/release_18_02.rst  |   16 +
 drivers/net/Makefile                    |    1 +
 drivers/net/avf/Makefile                |   52 +
 drivers/net/avf/avf.h                   |  219 +++
 drivers/net/avf/avf_ethdev.c            | 1451 ++++++++++++++++
 drivers/net/avf/avf_log.h               |   44 +
 drivers/net/avf/avf_rxtx.c              | 1959 +++++++++++++++++++++
 drivers/net/avf/avf_rxtx.h              |  260 +++
 drivers/net/avf/avf_rxtx_vec_common.h   |  210 +++
 drivers/net/avf/avf_rxtx_vec_sse.c      |  656 +++++++
 drivers/net/avf/avf_vchnl.c             |  812 +++++++++
 drivers/net/avf/base/README             |   19 +
 drivers/net/avf/base/avf_adminq.c       | 1010 +++++++++++
 drivers/net/avf/base/avf_adminq.h       |  166 ++
 drivers/net/avf/base/avf_adminq_cmd.h   | 2842 +++++++++++++++++++++++++++++++
 drivers/net/avf/base/avf_alloc.h        |   65 +
 drivers/net/avf/base/avf_common.c       | 1845 ++++++++++++++++++++
 drivers/net/avf/base/avf_devids.h       |   43 +
 drivers/net/avf/base/avf_hmc.h          |  245 +++
 drivers/net/avf/base/avf_lan_hmc.h      |  200 +++
 drivers/net/avf/base/avf_osdep.h        |  164 ++
 drivers/net/avf/base/avf_prototype.h    |  206 +++
 drivers/net/avf/base/avf_register.h     |  346 ++++
 drivers/net/avf/base/avf_status.h       |  108 ++
 drivers/net/avf/base/avf_type.h         | 2024 ++++++++++++++++++++++
 drivers/net/avf/base/virtchnl.h         |  787 +++++++++
 drivers/net/avf/rte_pmd_avf_version.map |    4 +
 drivers/net/i40e/i40e_ethdev.c          |   69 +-
 drivers/net/i40e/i40e_ethdev.h          |    5 +
 drivers/net/i40e/i40e_pf.c              |  140 +-
 drivers/net/i40e/i40e_pf.h              |    6 +
 mk/rte.app.mk                           |    1 +
 37 files changed, 16058 insertions(+), 27 deletions(-)
 create mode 100644 doc/guides/nics/features/avf.ini
 create mode 100644 doc/guides/nics/features/avf_vec.ini
 create mode 100644 drivers/net/avf/Makefile
 create mode 100644 drivers/net/avf/avf.h
 create mode 100644 drivers/net/avf/avf_ethdev.c
 create mode 100644 drivers/net/avf/avf_log.h
 create mode 100644 drivers/net/avf/avf_rxtx.c
 create mode 100644 drivers/net/avf/avf_rxtx.h
 create mode 100644 drivers/net/avf/avf_rxtx_vec_common.h
 create mode 100644 drivers/net/avf/avf_rxtx_vec_sse.c
 create mode 100644 drivers/net/avf/avf_vchnl.c
 create mode 100644 drivers/net/avf/base/README
 create mode 100644 drivers/net/avf/base/avf_adminq.c
 create mode 100644 drivers/net/avf/base/avf_adminq.h
 create mode 100644 drivers/net/avf/base/avf_adminq_cmd.h
 create mode 100644 drivers/net/avf/base/avf_alloc.h
 create mode 100644 drivers/net/avf/base/avf_common.c
 create mode 100644 drivers/net/avf/base/avf_devids.h
 create mode 100644 drivers/net/avf/base/avf_hmc.h
 create mode 100644 drivers/net/avf/base/avf_lan_hmc.h
 create mode 100644 drivers/net/avf/base/avf_osdep.h
 create mode 100644 drivers/net/avf/base/avf_prototype.h
 create mode 100644 drivers/net/avf/base/avf_register.h
 create mode 100644 drivers/net/avf/base/avf_status.h
 create mode 100644 drivers/net/avf/base/avf_type.h
 create mode 100644 drivers/net/avf/base/virtchnl.h
 create mode 100644 drivers/net/avf/rte_pmd_avf_version.map

-- 
1.9.3



More information about the dev mailing list