From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id B9176FAB4 for ; Mon, 16 Jan 2017 06:51:58 +0100 (CET) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga103.jf.intel.com with ESMTP; 15 Jan 2017 21:51:57 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,237,1477983600"; d="scan'208";a="31011378" Received: from dpdk26.sh.intel.com ([10.239.128.228]) by orsmga002.jf.intel.com with ESMTP; 15 Jan 2017 21:51:57 -0800 From: Wenzhuo Lu To: dev@dpdk.org Cc: Wenzhuo Lu Date: Mon, 16 Jan 2017 13:51:25 +0800 Message-Id: <1484545911-40432-1-git-send-email-wenzhuo.lu@intel.com> X-Mailer: git-send-email 1.9.3 In-Reply-To: <1480637533-37425-1-git-send-email-wenzhuo.lu@intel.com> References: <1480637533-37425-1-git-send-email-wenzhuo.lu@intel.com> Subject: [dpdk-dev] [PATCH v10 00/26] Support VFD on i40e - EXPERIMENTAL X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Jan 2017 05:51:59 -0000 1, VF Daemon (VFD) VFD is an idea to control all the VFs from PF. As we need to support the scenario kernel PF + DPDK VF, DPDK follows the interface between kernel PF + kernel VF. We don't want to introduce too many new messages between PF and VF. So this patch set adds some new APIs to control VFs directly from PF. The new APIs include, 1) set VF MAC anti-spoofing 2) set VF VLAN anti-spoofing 3) set TX loopback 4) set VF unicast promiscuous mode 5) set VF multicast promiscuous mode 6) set VF MTU 7) get/reset VF stats 8) set VF MAC address 9) set VF VLAN stripping 10) VF VLAN insertion 12) set VF broadcast mode 13) set VF VLAN tag 14) set VF VLAN filter VFD also includes VF to PF mailbox message management by APP. When PF receives mailbox messages from VF, PF should call the callback provided by APP to know if they're permitted to be processed. Please aware VFD is an EXPERIMENTAL feature, it can be changed, or even removed, without prior notice. 2, Implement VF MAC address setting on VF. v10: - some minor change of the doc and comments. - add the NIC check in the private APIs. v9: - upadte the doc and announce VFD is an experimental feature. v8: - remove unnecessary VF check. - add more debug logs. - split VMDq related code to a separate patch set. - some minor change. v7: - fix 32 bit compile error in patch 23. - add new patches to configure VMDq. v6: - remove the support of DPDK PF + kernel VF. Will create a new patch set for it. - reword the tittles of some patches. - add sanity check for vsi, and other minor change. v5: - fix testpmd build error(s) - fix i40e vf_rx_vlan - remove redundant memset on dev_info - add functions to .map file sorted v4: - rebase on latest next-net - move patch 10/29 testpmd part to patch 18/29 v3: - fix issue that VF does not work for i40e - remove patch for VDMq receive mode init - move get/reset VF stats API into rte_pmd_i40 v2: - fix the compile issues. - fix the checkpatch warning and typo. - update the commit log of some patches. - fix the invalid port ID issue of testpmd. Bernard Iremonger (7): net/i40e: set VF VLAN insertion from PF net/i40e: set VF broadcast mode from PF net/i40e: set VF VLAN tag from PF net/i40e: set VF VLAN filter from PF app/testpmd: add command to test VF broadcast mode on i40e app/testpmd: add command to test VF VLAN tag on i40e app/testpmd: handle i40e in VF VLAN filter command Chen Jing D(Mark) (2): net/i40e: set VF VLAN strip from PF net/i40e: enhance in sanity check of MAC Ferruh Yigit (3): net/i40e: set VF MAC from PF support net/i40e: set VF MAC from VF support net/i40e: fix VF MAC address assignment Qi Zhang (3): net/i40e: enable VF MTU change net/i40e: fix VF reset flow net/i40e: set/clear VF stats from PF Wenzhuo Lu (11): net/i40e: support link status notification net/i40e: add callback to user on VF to PF mbox msg net/i40e: set VF MAC anti-spoofing from PF net/i40e: set VF VLAN anti-spoofing from PF net/i40e: set Tx loopback from PF net/i40e: set VF unicast promisc mode from PF net/i40e: set VF multicast promisc mode from PF app/testpmd: use VFD APIs on i40e app/testpmd: use unicast promiscuous mode on i40e app/testpmd: use multicast promiscuous mode on i40e doc: update doc for VFD MAINTAINERS | 1 + app/test-pmd/Makefile | 1 + app/test-pmd/cmdline.c | 550 ++++++++++++++-- app/test-pmd/config.c | 13 - app/test-pmd/testpmd.h | 2 - doc/guides/nics/i40e.rst | 1 + doc/guides/rel_notes/release_17_02.rst | 29 + doc/guides/testpmd_app_ug/testpmd_funcs.rst | 32 + drivers/net/i40e/Makefile | 4 +- drivers/net/i40e/i40e_ethdev.c | 976 +++++++++++++++++++++++++++- drivers/net/i40e/i40e_ethdev.h | 5 +- drivers/net/i40e/i40e_ethdev_vf.c | 82 ++- drivers/net/i40e/i40e_pf.c | 244 +++++-- drivers/net/i40e/i40e_pf.h | 9 +- drivers/net/i40e/rte_pmd_i40e.h | 335 ++++++++++ drivers/net/i40e/rte_pmd_i40e_version.map | 20 + 16 files changed, 2189 insertions(+), 115 deletions(-) create mode 100644 drivers/net/i40e/rte_pmd_i40e.h Series-Acked-by: Helin Zhang Series-Acked-By: Vincent Jardin -- 1.9.3