From patchwork Sat Dec 13 03:06:10 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Chao Zhu X-Patchwork-Id: 1973 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id D58497FCB; Sat, 13 Dec 2014 04:06:14 +0100 (CET) Received: from e28smtp03.in.ibm.com (e28smtp03.in.ibm.com [122.248.162.3]) by dpdk.org (Postfix) with ESMTP id 7F4F268BE for ; Sat, 13 Dec 2014 04:06:10 +0100 (CET) Received: from /spool/local by e28smtp03.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Sat, 13 Dec 2014 08:36:08 +0530 Received: from d28dlp02.in.ibm.com (9.184.220.127) by e28smtp03.in.ibm.com (192.168.1.133) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Sat, 13 Dec 2014 08:36:07 +0530 Received: from d28relay04.in.ibm.com (d28relay04.in.ibm.com [9.184.220.61]) by d28dlp02.in.ibm.com (Postfix) with ESMTP id CE9DB3940048 for ; Sat, 13 Dec 2014 08:36:06 +0530 (IST) Received: from d28av01.in.ibm.com (d28av01.in.ibm.com [9.184.220.63]) by d28relay04.in.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id sBD36hdK64749784 for ; Sat, 13 Dec 2014 08:36:43 +0530 Received: from d28av01.in.ibm.com (localhost [127.0.0.1]) by d28av01.in.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id sBD366m7002506 for ; Sat, 13 Dec 2014 08:36:06 +0530 Received: from os_controller.crl.ibm.com ([9.186.57.58]) by d28av01.in.ibm.com (8.14.4/8.14.4/NCO v10.0 AVin) with ESMTP id sBD364Kx002379 for ; Sat, 13 Dec 2014 08:36:05 +0530 From: Chao Zhu To: dev@dpdk.org Date: Sat, 13 Dec 2014 11:06:10 +0800 Message-Id: <1418439970-1472-2-git-send-email-chaozhu@linux.vnet.ibm.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1418439970-1472-1-git-send-email-chaozhu@linux.vnet.ibm.com> References: <1418439970-1472-1-git-send-email-chaozhu@linux.vnet.ibm.com> X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 14121303-0009-0000-0000-000002E2745B Subject: [dpdk-dev] [PATCH] doc: Add IBM Power description to linux guides 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patch added IBM ppc_64 descriptions, including architecture support, compiling requirements on Linux. Signed-off-by: Chao Zhu Acked-by: Bernard Iremonger --- doc/guides/linux_gsg/build_dpdk.rst | 4 +- doc/guides/linux_gsg/quick_start.rst | 40 +++++++++++++++++---------------- doc/guides/linux_gsg/sys_reqs.rst | 29 ++++++++++++++++-------- 3 files changed, 42 insertions(+), 31 deletions(-) diff --git a/doc/guides/linux_gsg/build_dpdk.rst b/doc/guides/linux_gsg/build_dpdk.rst index ee6cb69..5bdd6d8 100644 --- a/doc/guides/linux_gsg/build_dpdk.rst +++ b/doc/guides/linux_gsg/build_dpdk.rst @@ -66,9 +66,9 @@ The format of a Intel® DPDK target is: where: -* ARCH can be: i686, x86_64 +* ARCH can be: i686, x86_64, ppc_64 -* MACHINE can be: native, ivshmem +* MACHINE can be: native, ivshmem, power8 * EXECENV can be: linuxapp, bsdapp diff --git a/doc/guides/linux_gsg/quick_start.rst b/doc/guides/linux_gsg/quick_start.rst index 089dddb..2956c6c 100644 --- a/doc/guides/linux_gsg/quick_start.rst +++ b/doc/guides/linux_gsg/quick_start.rst @@ -132,29 +132,31 @@ Some options in the script prompt the user for further data before proceeding. [7] x86_64-native-linuxapp-icc + [8] ppc_64-power8-linuxapp-gcc + ------------------------------------------------------------------------ Step 2: Setup linuxapp environment ------------------------------------------------------------------------ - [8] Insert IGB UIO module + [9] Insert IGB UIO module - [9] Insert VFIO module + [10] Insert VFIO module - [10] Insert KNI module + [11] Insert KNI module - [11] Setup hugepage mappings for non-NUMA systems + [12] Setup hugepage mappings for non-NUMA systems - [12] Setup hugepage mappings for NUMA systems + [13] Setup hugepage mappings for NUMA systems - [13] Display current Ethernet device settings + [14] Display current Ethernet device settings - [14] Bind Ethernet device to IGB UIO module + [15] Bind Ethernet device to IGB UIO module - [15] Bind Ethernet device to VFIO module + [16] Bind Ethernet device to VFIO module - [16] Setup VFIO permissions + [17] Setup VFIO permissions ------------------------------------------------------------------------ @@ -162,9 +164,9 @@ Some options in the script prompt the user for further data before proceeding. ------------------------------------------------------------------------ - [17] Run test application ($RTE_TARGET/app/test) + [18] Run test application ($RTE_TARGET/app/test) - [18] Run testpmd application in interactive mode ($RTE_TARGET/app/testpmd) + [19] Run testpmd application in interactive mode ($RTE_TARGET/app/testpmd) ------------------------------------------------------------------------ @@ -172,7 +174,7 @@ Some options in the script prompt the user for further data before proceeding. ------------------------------------------------------------------------ - [19] List hugepage info from /proc/meminfo + [20] List hugepage info from /proc/meminfo ------------------------------------------------------------------------ @@ -180,19 +182,19 @@ Some options in the script prompt the user for further data before proceeding. ------------------------------------------------------------------------ - [20] Uninstall all targets + [21] Uninstall all targets - [21] Unbind NICs from IGB UIO driver + [22] Unbind NICs from IGB UIO driver - [22] Remove IGB UIO module + [23] Remove IGB UIO module - [23] Remove VFIO module + [24] Remove VFIO module - [24] Remove KNI module + [25] Remove KNI module - [25] Remove hugepage mappings + [26] Remove hugepage mappings - [26] Exit Script + [27] Exit Script Option: diff --git a/doc/guides/linux_gsg/sys_reqs.rst b/doc/guides/linux_gsg/sys_reqs.rst index c14411e..f712bec 100644 --- a/doc/guides/linux_gsg/sys_reqs.rst +++ b/doc/guides/linux_gsg/sys_reqs.rst @@ -38,8 +38,8 @@ This chapter describes the packages required to compile the Intel® DPDK. If the Intel® DPDK is being used on an Intel® Communications Chipset 89xx Series platform, please consult the *Intel® Communications Chipset 89xx Series Software for Linux* Getting Started Guide*. -BIOS Setting Prerequisite -------------------------- +BIOS Setting Prerequisite on x86 +-------------------------------- For the majority of platforms, no special BIOS settings are needed to use basic Intel® DPDK functionality. However, for additional HPET timer and power management functionality, @@ -61,18 +61,22 @@ Compilation of the Intel® DPDK * coreutils: cmp, sed, grep, arch -* gcc: versions 4.5.x or later is recommended. - On some distributions, some specific compiler flags and linker flags are enabled by default and - affect performance (- fstack-protector, for example). - Please refer to the documentation of your distribution and to gcc -dumpspecs. +* gcc: versions 4.5.x or later is recommended for i686/x86_64. versions 4.8.x or later is recommanded + for ppc_64. On some distributions, some specific compiler flags and linker flags are enabled by + default and affect performance (- fstack-protector, for example). Please refer to the documentation + of your distribution and to gcc -dumpspecs. -* libc headers (glibc-devel.i686 / libc6-dev-i386; glibc-devel.x86_64 for 64-bit compilation) +* libc headers (glibc-devel.i686 / libc6-dev-i386; glibc-devel.x86_64 for 64-bit compilation on Intel + architecture; glibc-devel.ppc64 for 64 bit IBM Power architecture;) -* Linux kernel headers or sources required to build kernel modules. (kernel- devel.x86_64) +* Linux kernel headers or sources required to build kernel modules. (kernel - devel.x86_64; + kernel - devel.ppc64) * Additional packages required for 32-bit compilation on 64-bit systems are: - glibc.i686, libgcc.i686, libstdc++.i686 and glibc-devel.i686 + glibc.i686, libgcc.i686, libstdc++.i686 and glibc-devel.i686 for Intel i686/x86_64; + + glibc.ppc64, libgcc.ppc64, libstdc++.ppc64 and glibc-devel.ppc64 for IBM ppc_64; * Python, version 2.6 or 2.7, to use various helper scripts included in the Intel® DPDK package @@ -83,6 +87,10 @@ Compilation of the Intel® DPDK See the icc Installation Guide found in the Documentation directory under the compiler installation. This release has been tested using version 12.1. +* IBM® Advance ToolChain for Powerlinux. This is a set of open source development tools and runtime libraries + which allows users to take leading edge advantage of IBM's latest POWER hardware features on Linux. To install + it, see the IBM official installation document. + * libpcap headers and libraries (libpcap-devel) to compile and use the libpcap-based poll-mode driver. This driver is disabled by default and can be enabled by setting CONFIG_RTE_LIBRTE_PMD_PCAP=y in the build time config file. @@ -171,8 +179,9 @@ For example, to reserve 4G of hugepage memory in the form of four 1G pages, the .. note:: - The hugepage sizes that a CPU supports can be determined from the CPU flags. + The hugepage sizes that a CPU supports can be determined from the CPU flags on Intel architecture. If pse exists, 2M hugepages are supported; if pdpe1gb exists, 1G hugepages are supported. + On IBM Power architecture, the supported hugepage sizes are 16MB and 16GB. .. note::