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 ED5105AA1 for ; Fri, 13 Mar 2015 10:14:31 +0100 (CET) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga103.jf.intel.com with ESMTP; 13 Mar 2015 02:11:32 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.11,393,1422950400"; d="scan'208";a="679578070" Received: from shvmail01.sh.intel.com ([10.239.29.42]) by fmsmga001.fm.intel.com with ESMTP; 13 Mar 2015 02:14:30 -0700 Received: from shecgisg003.sh.intel.com (shecgisg003.sh.intel.com [10.239.29.90]) by shvmail01.sh.intel.com with ESMTP id t2D9ESo0006543; Fri, 13 Mar 2015 17:14:28 +0800 Received: from shecgisg003.sh.intel.com (localhost [127.0.0.1]) by shecgisg003.sh.intel.com (8.13.6/8.13.6/SuSE Linux 0.8) with ESMTP id t2D9EQu8018427; Fri, 13 Mar 2015 17:14:28 +0800 Received: (from jingche2@localhost) by shecgisg003.sh.intel.com (8.13.6/8.13.6/Submit) id t2D9EQce018423; Fri, 13 Mar 2015 17:14:26 +0800 From: "Chen Jing D(Mark)" To: dev@dpdk.org Date: Fri, 13 Mar 2015 17:14:18 +0800 Message-Id: <1426238059-18386-2-git-send-email-jing.d.chen@intel.com> X-Mailer: git-send-email 1.7.12.2 In-Reply-To: <1426238059-18386-1-git-send-email-jing.d.chen@intel.com> References: <1425623986-15465-1-git-send-email-jing.d.chen@intel.com> <1426238059-18386-1-git-send-email-jing.d.chen@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] =?utf-8?q?=5BPATCH_v2_1/2=5D_doc=3A_update_programmers?= =?utf-8?q?_guide_for_fm10k_pmd_driver?= X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 Mar 2015 09:14:32 -0000 From: "Chen Jing D(Mark)" DPDK introduced pmd driver for PCIE host-interface of Intel Ethernet Switch FM10000 Series, update programming guide to describe the new driver and usage. Signed-off-by: Chen Jing D(Mark) --- .../prog_guide/i40e_ixgbe_igb_virt_func_drv.rst | 37 ++++++++++++++++++- doc/guides/prog_guide/source_org.rst | 1 + 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/doc/guides/prog_guide/i40e_ixgbe_igb_virt_func_drv.rst b/doc/guides/prog_guide/i40e_ixgbe_igb_virt_func_drv.rst index 41e316e..8ea518d 100755 --- a/doc/guides/prog_guide/i40e_ixgbe_igb_virt_func_drv.rst +++ b/doc/guides/prog_guide/i40e_ixgbe_igb_virt_func_drv.rst @@ -53,9 +53,10 @@ Refer to Figure 10. Therefore, a NIC is logically distributed among multiple virtual machines (as shown in Figure 10), while still having global data in common to share with the Physical Function and other Virtual Functions. -The DPDK i40evf, igbvf or ixgbevf as a Poll Mode Driver (PMD) serves for the Intel® 82576 Gigabit Ethernet Controller, +The DPDK fm10kvf, i40evf, igbvf or ixgbevf as a Poll Mode Driver (PMD) serves for the Intel® 82576 Gigabit Ethernet Controller, Intel® Ethernet Controller I350 family, Intel® 82599 10 Gigabit Ethernet Controller NIC, -or Intel® Fortville 10/40 Gigabit Ethernet Controller NIC's virtual PCI function. +Intel® Fortville 10/40 Gigabit Ethernet Controller NIC's virtual PCI function,or PCIE host-interface of the Intel Ethernet Switch +FM10000 Series. Meanwhile the DPDK Poll Mode Driver (PMD) also supports "Physical Function" of such NIC's on the host. The DPDK PF/VF Poll Mode Driver (PMD) supports the Layer 2 switch on Intel® 82576 Gigabit Ethernet Controller, @@ -93,6 +94,38 @@ and the Physical Function operates on the global resources on behalf of the Virt For this out-of-band communication, an SR-IOV enabled NIC provides a memory buffer for each Virtual Function, which is called a "Mailbox". + +The PCIE host-interface of Intel Ethernet Switch FM10000 Series VF infrastructure +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +In a virtualized environment, the programmer can enable a maximum of *64 Virtual Functions (VF)* +globally per PCIE host-interface of the Intel Ethernet Switch FM10000 Series device. +Each VF can have a maximum of 16 queue pairs. +The Physical Function in host could be only configured by the Linux* fm10k driver +(in the case of the Linux Kernel-based Virtual Machine [KVM]), DPDK PMD PF driver doesn't support it yet. + +For example, + +* Using Linux* fm10k driver: + + .. code-block:: console + + rmmod fm10k (To remove the fm10k module) + insmod fm0k.ko max_vfs=2,2 (To enable two Virtual Functions per port) + +Virtual Function enumeration is performed in the following sequence by the Linux* pci driver for a dual-port NIC. +When you enable the four Virtual Functions with the above command, the four enabled functions have a Function# +represented by (Bus#, Device#, Function#) in sequence starting from 0 to 3. +However: + +* Virtual Functions 0 and 2 belong to Physical Function 0 + +* Virtual Functions 1 and 3 belong to Physical Function 1 + +.. note:: + + The above is an important consideration to take into account when targeting specific packets to a selected port. + Intel® Fortville 10/40 Gigabit Ethernet Controller VF Infrastructure ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/doc/guides/prog_guide/source_org.rst b/doc/guides/prog_guide/source_org.rst index c66ad16..061f107 100644 --- a/doc/guides/prog_guide/source_org.rst +++ b/doc/guides/prog_guide/source_org.rst @@ -81,6 +81,7 @@ The lib directory contains:: +-- librte_net # various IP-related headers +-- librte_pmd_bond # bonding poll mode driver +-- librte_pmd_e1000 # 1GbE poll mode drivers (igb and em) + +-- librte_pmd_fm10k # Host interface PMD driver for FM10000 Series +-- librte_pmd_ixgbe # 10GbE poll mode driver +-- librte_pmd_i40e # 40GbE poll mode driver +-- librte_pmd_mlx4 # Mellanox ConnectX-3 poll mode driver -- 1.7.7.6