From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ferruh Yigit Subject: [PATCH v4 00/29] Support VFD and DPDK PF + kernel VF on i40e Date: Fri, 16 Dec 2016 14:38:50 +0000 Message-ID: <20161216143919.4909-1-ferruh.yigit@intel.com> References: <1481835919-36488-1-git-send-email-qi.z.zhang@intel.com> Cc: Jingjing Wu ; Helin Zhang To: dev@dpdk.org Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id B65E45584 for ; Fri, 16 Dec 2016 15:39:26 +0100 (CET) In-Reply-To: <1481835919-36488-1-git-send-email-qi.z.zhang@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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 12) set VF VLAN tag 13) 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. 2, Implement VF MAC address setting on VF. 3, Support the scenario DPDK PF + kernel VF. 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: add set VF VLAN insert function 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) (6): net/i40e: add VF VLAN strip func net/i40e: change version number to support Linux VF net/i40e: return correct VSI id net/i40e: parse more VF parameter and configure net/i40e: support Linux VF to configure IRQ link list 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 (10): 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 app/test-pmd/Makefile | 2 + app/test-pmd/cmdline.c | 473 +++++++++++++++- app/test-pmd/config.c | 17 +- doc/guides/testpmd_app_ug/testpmd_funcs.rst | 32 ++ drivers/net/i40e/Makefile | 4 +- drivers/net/i40e/i40e_ethdev.c | 847 +++++++++++++++++++++++++++- drivers/net/i40e/i40e_ethdev.h | 5 +- drivers/net/i40e/i40e_ethdev_vf.c | 82 ++- drivers/net/i40e/i40e_pf.c | 417 ++++++++++++-- drivers/net/i40e/i40e_pf.h | 9 +- drivers/net/i40e/rte_pmd_i40e.h | 328 +++++++++++ drivers/net/i40e/rte_pmd_i40e_version.map | 20 + 12 files changed, 2129 insertions(+), 107 deletions(-) create mode 100644 drivers/net/i40e/rte_pmd_i40e.h -- 2.9.3