summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorge Nita <george.nita@enea.com>2015-09-30 05:12:02 +0200
committerGeorge Nita <george.nita@enea.com>2015-09-30 05:12:02 +0200
commit9e4c491105d191b064614d9255f467d552ea3362 (patch)
treeef1fb0171d8e087a7d4f7d1b04a8d9b59c522801
parent584147c3832229a6165c52b87138919926a74498 (diff)
parent84c049b9cb80b50fd32b716c2ae97e3f0d4e3cd7 (diff)
downloadmeta-intel-9e4c491105d191b064614d9255f467d552ea3362.tar.gz
Merge remote-tracking branch 'origin/master' into master-enea
-rw-r--r--MAINTAINERS4
-rw-r--r--conf/machine/README1
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk.inc2
-rw-r--r--meta-romley/COPYING.MIT17
-rw-r--r--meta-romley/README199
-rw-r--r--meta-romley/README.sources17
-rw-r--r--meta-romley/binary/.gitignore0
-rw-r--r--meta-romley/conf/layer.conf12
-rw-r--r--meta-romley/conf/machine/romley-ivb.conf20
-rw-r--r--meta-romley/conf/machine/romley.conf20
-rw-r--r--meta-romley/recipes-bsp/formfactor/formfactor/romley-ivb/machconfig3
-rw-r--r--meta-romley/recipes-bsp/formfactor/formfactor/romley/machconfig3
-rw-r--r--meta-romley/recipes-bsp/formfactor/formfactor_0.0.bbappend1
-rw-r--r--meta-romley/recipes-extended/dpdk/dpdk.inc140
-rw-r--r--meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch53
-rw-r--r--meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch35
-rw-r--r--meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch35
-rw-r--r--meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-examples-Add-config-variables-to-enable-disable-dpdk.patch42
-rw-r--r--meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-examples-pipeline-build-with-all-examples.patch34
-rw-r--r--meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-ring-remove-extra-devices-creation-with-vdev-option.patch44
-rw-r--r--meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-ring-simplify-unit-tests.patch380
-rw-r--r--meta-romley/recipes-extended/dpdk/dpdk_1.6.0r2.bb45
-rw-r--r--meta-romley/recipes-extended/dpdk/dpdk_1.7.0.bb41
23 files changed, 0 insertions, 1148 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
index 233fa2eb..79a021dc 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -35,10 +35,6 @@ CRYSTALFOREST
35M: Wu Chia Chuan <chia.chuan.wu@intel.com> 35M: Wu Chia Chuan <chia.chuan.wu@intel.com>
36F: meta-crystalforest/ 36F: meta-crystalforest/
37 37
38ROMLEY
39M: Wu Chia Chuan <chia.chuan.wu@intel.com>
40F: meta-romley/
41
42TLK 38TLK
43M: Saul Wold <sgw@linux.intel.com> 39M: Saul Wold <sgw@linux.intel.com>
44F: meta-tlk/ 40F: meta-tlk/
diff --git a/conf/machine/README b/conf/machine/README
index 4bab5c14..47d66286 100644
--- a/conf/machine/README
+++ b/conf/machine/README
@@ -29,7 +29,6 @@ For intel-corei7-64:
29 crystalforest-gladden 29 crystalforest-gladden
30 haswell-wc 30 haswell-wc
31 nuc (Ivy Bridge and Haswell, manual audio config required) 31 nuc (Ivy Bridge and Haswell, manual audio config required)
32 romley
33 sugarbay 32 sugarbay
34 33
35For intel-core2-32: 34For intel-core2-32:
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk.inc b/meta-isg/common/recipes-extended/dpdk/dpdk.inc
index da481fce..e08594c9 100644
--- a/meta-isg/common/recipes-extended/dpdk/dpdk.inc
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk.inc
@@ -53,8 +53,6 @@ def get_dpdk_target_mach(bb, d):
53 "mohonpeak64": "atm", 53 "mohonpeak64": "atm",
54 "mohonpeak32": "atm", 54 "mohonpeak32": "atm",
55 "crystalforest": "ivb", 55 "crystalforest": "ivb",
56 "romley": "snd",
57 "romley-ivb": "ivb",
58 "intel_corei7_64": "hsw", 56 "intel_corei7_64": "hsw",
59 } 57 }
60 58
diff --git a/meta-romley/COPYING.MIT b/meta-romley/COPYING.MIT
deleted file mode 100644
index fb950dc6..00000000
--- a/meta-romley/COPYING.MIT
+++ /dev/null
@@ -1,17 +0,0 @@
1Permission is hereby granted, free of charge, to any person obtaining a copy
2of this software and associated documentation files (the "Software"), to deal
3in the Software without restriction, including without limitation the rights
4to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
5copies of the Software, and to permit persons to whom the Software is
6furnished to do so, subject to the following conditions:
7
8The above copyright notice and this permission notice shall be included in
9all copies or substantial portions of the Software.
10
11THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
17THE SOFTWARE.
diff --git a/meta-romley/README b/meta-romley/README
deleted file mode 100644
index acdcb99d..00000000
--- a/meta-romley/README
+++ /dev/null
@@ -1,199 +0,0 @@
1This README file contains information on building the meta-romley
2BSP layer, and booting the images contained in the /binary directory.
3Please see the corresponding sections below for details.
4
5The romley platform consists of two versions:
61. romley - Sandy Bridge
72. romley - Ivy Bridge
8
9The romley - Sandy Bridge platform consists of the Intel Xeon E5-2600
10and E5-2400 Series processors, plus the Intel C604/C602-J chipset
11(Sandy Bridge-EP/EN + Patsburg).
12
13The romley - Ivy Bridge platform consists of the Intel Xeon E5-2600
14and E5-2400 v2 Series processors with the Intel C604/C602-J chipset
15(Ivy Bridge-EP/EN + Patsburg).
16
17This BSP assumes Matrox graphics is being used.
18
19Further information about the platforms supported by this BSP can be
20found here:
21
22 http://www.intel.com/p/en_US/embedded/hwsw/hardware/xeon-e5-c604/overview
23
24Information on all IntelĀ® embedded platforms can be found here:
25
26 http://www.intel.com/p/en_US/embedded/hwsw/hardware
27
28
29Yocto Project Compatible
30========================
31
32This BSP is compatible with the Yocto Project as per the requirements
33listed here:
34
35 https://www.yoctoproject.org/webform/yocto-project-compatible-registration
36
37
38Dependencies
39============
40
41This layer depends on:
42
43 URI: git://git.openembedded.org/bitbake
44 branch: master
45
46 URI: git://git.openembedded.org/openembedded-core
47 layers: meta
48 branch: master
49
50 URI: git://git.yoctoproject.org/meta-intel
51 layers: intel
52 branch: master
53
54
55Patches
56=======
57
58Please submit any patches against this BSP to the meta-intel mailing
59list (meta-intel@yoctoproject.org) and cc: the maintainer:
60
61Maintainer: Chan Wei Sern <wei.sern.chan@intel.com>
62
63Please see the meta-intel/MAINTAINERS file for more details.
64
65
66Table of Contents
67=================
68
69 I. Building the meta-romley BSP layer
70 II. Booting the images in /binary
71III. Device Notes
72 a. Boot Loader
73 b. I/O drivers
74IV. Enabling Intel DPDK Technology
75
76I. Building the meta-romley BSP layer
77=======================================
78
79In order to build an image with BSP support for a given release, you
80need to download the corresponding BSP tarball from the 'Board Support
81Package (BSP) Downloads' page of the Yocto Project website.
82
83Having done that, and assuming you extracted the BSP tarball contents
84at the top-level of your yocto build tree, you can build a romley
85image by adding the location of the meta-romley layer to
86bblayers.conf, along with the meta-intel layer itself (to access
87common metadata shared between BSPs) e.g.:
88
89 yocto/meta-intel \
90 yocto/meta-intel/meta-romley \
91
92To enable the romley Sandy Bridge layer, add the romley MACHINE to local.conf:
93
94 MACHINE ?= "romley"
95
96To enable the romley Ivy Bridge layer, add the romley-ivb MACHINE to local.conf:
97
98 MACHINE ?= "romley-ivb"
99
100You should then be able to build a romley image as such:
101
102 $ source oe-init-build-env
103 $ bitbake core-image-sato
104
105At the end of a successful build, you should have a live image that
106you can boot from a USB flash drive (see instructions on how to do
107that below, in the section 'Booting the images from /binary').
108
109As an alternative to downloading the BSP tarball, you can also work
110directly from the meta-intel git repository. For each BSP in the
111'meta-intel' repository, there are multiple branches, one
112corresponding to each major release starting with 'laverne' (0.90), in
113addition to the latest code which tracks the current master (note that
114not all BSPs are present in every release). Instead of extracting a
115BSP tarball at the top level of your yocto build tree, you can
116equivalently check out the appropriate branch from the meta-intel
117repository at the same location.
118
119
120II. Booting the images in /binary
121=================================
122
123This BSP contains bootable live images, which can be used to directly
124boot Yocto off of a USB flash drive.
125
126Under Linux, insert a USB flash drive. Assuming the USB flash drive
127takes device /dev/sdf, use dd to copy the live image to it. For
128example:
129
130# dd if=core-image-sato-romley.hddimg of=/dev/sdf
131# sync
132# eject /dev/sdf
133
134This should give you a bootable USB flash device. Insert the device
135into a bootable USB socket on the target, and power on. This should
136result in a system booted to the Sato graphical desktop.
137
138If you want a terminal, use the arrows at the top of the UI to move to
139different pages of available applications, one of which is named
140'Terminal'. Clicking that should give you a root terminal.
141
142If you want to ssh into the system, you can use the root terminal to
143ifconfig the IP address and use that to ssh in. The root password is
144empty, so to log in type 'root' for the user name and hit 'Enter' at
145the Password prompt: and you should be in.
146
147If you're using Rose City and does not have ME firmware and struggling with
148rebooting the machine. This is because broken ME firmware can contribute to long wait of
149reboot. We have to changing the kernel command line to blacklist MEI driver to be loaded:
150
1511. Open your syslinux in VI editor eg:
152 # vi /media/sda/syslinux.cfg
153
1542. Look for the line that has kernel command line which has certain similiarity
155 as below:
156
157 "APPEND initrd=/initrd LABEL=boot root=/dev/ram0 ....."
158
159 or
160
161 "APPEND initrd=/initrd LABEL=install root=/dev/ram0 ...."
162
1633. Add "mei_me.blacklist=yes"at the end of that line and it will be like below:
164 "APPEND inird=/initRD LABEL=boot root=/dev/ram0 .... mei_me.blacklist=yes"
165
1664. Save this syslinux.cfg
167
1685. Boot up the Romley with this new changed.
169
170
171III. Device Notes
172=================
173
174a. Boot Loader
175--------------
176- Support BIOS version at RoseCity board :RMLCRB.86J.R0.45.D018
177
178b. I/O drivers
179--------------
180-Support Matrox graphic card.
181-Support SATA, USB Host v2.0
182-Supported I/O devices (APIC, RTC, SPI, UART, I2C, LPS, SMBus i801,
183 WDT, and HPET)
184
185IV. Enabling Intel DPDK Technology
186===================================
187
188There are recipes available for the 'Intel Data Plane Development Kit
189Technology components for use with this BSP. Please contact your
190Intel Field Sales Representative or visit Intel Embedded Design
191Center (www.intel.com/p/en_US/embedded/designcenter) for instructions on how
192to locate and use these recipes.
193----
194
195If you find you're getting corrupt images on the USB (it doesn't show
196the syslinux boot: prompt, or the boot: prompt contains strange
197characters), try doing this first:
198
199# dd if=/dev/zero of=/dev/sdf bs=1M count=512
diff --git a/meta-romley/README.sources b/meta-romley/README.sources
deleted file mode 100644
index 0d4d849a..00000000
--- a/meta-romley/README.sources
+++ /dev/null
@@ -1,17 +0,0 @@
1The sources for the packages comprising the images shipped with this
2BSP can be found at the following location:
3
4http://downloads.yoctoproject.org/mirror/sources/
5
6The metadata used to generate the images shipped with this BSP, in
7addition to the code contained in this BSP, can be found at the
8following location:
9
10http://downloads.yoctoproject.org/releases/yocto/yocto-1.3/poky-danny-8.0.tar.bz2
11
12The metadata used to generate the images shipped with this BSP, in
13addition to the code contained in this BSP, can also be found at the
14following locations:
15
16git://git.yoctoproject.org/poky.git
17git://git.yoctoproject.org/meta-intel
diff --git a/meta-romley/binary/.gitignore b/meta-romley/binary/.gitignore
deleted file mode 100644
index e69de29b..00000000
--- a/meta-romley/binary/.gitignore
+++ /dev/null
diff --git a/meta-romley/conf/layer.conf b/meta-romley/conf/layer.conf
deleted file mode 100644
index 7b6a5bc3..00000000
--- a/meta-romley/conf/layer.conf
+++ /dev/null
@@ -1,12 +0,0 @@
1# We have a conf and classes directory, add to BBPATH
2BBPATH .= ":${LAYERDIR}"
3
4# We have a recipes directory, add to BBFILES
5BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
6 ${LAYERDIR}/recipes-*/*/*.bbappend"
7
8BBFILE_COLLECTIONS += "romley"
9BBFILE_PATTERN_romley := "^${LAYERDIR}/"
10BBFILE_PRIORITY_romley = "6"
11
12LAYERDEPENDS_romley = "intel"
diff --git a/meta-romley/conf/machine/romley-ivb.conf b/meta-romley/conf/machine/romley-ivb.conf
deleted file mode 100644
index 9d7bff6c..00000000
--- a/meta-romley/conf/machine/romley-ivb.conf
+++ /dev/null
@@ -1,20 +0,0 @@
1#@TYPE: Machine
2#@NAME: romley-ivb
3
4#@WEBTITLE: Intel Xeon E5-2600 and E5-2400 v2 Series (Formerly Ivy Bridge-EP/EN)
5#Processors with Intel C604/C602-J Chipset (Romley-EP/EN Platform)
6
7#@DESCRIPTION: Machine configuration for Romley systems
8# i.e. Xeon E5-2600 and E5-2400 + Intel CC604/C602-J
9
10
11PREFERRED_VERSION_linux-yocto ?= "3.14%"
12
13require conf/machine/include/intel-corei7-64-common.inc
14require conf/machine/include/intel-common-pkgarch.inc
15require conf/machine/include/meta-intel.inc
16
17XSERVER ?= "${XSERVER_X86_BASE} \
18 ${XSERVER_X86_EXT} \
19 ${XSERVER_X86_MATROX_MGA} \
20 "
diff --git a/meta-romley/conf/machine/romley.conf b/meta-romley/conf/machine/romley.conf
deleted file mode 100644
index 14f34b0a..00000000
--- a/meta-romley/conf/machine/romley.conf
+++ /dev/null
@@ -1,20 +0,0 @@
1#@TYPE: Machine
2#@NAME: romley
3
4#@WEBTITLE: Intel Xeon E5-2600 and E5-2400 Series (Formerly Sandy Bridge-EP/EN)
5#Processors with Intel C604/C602-J Chipset (Romley-EP/EN Platform)
6
7#@DESCRIPTION: Machine configuration for Romley systems
8# i.e. Xeon E5-2600 and E5-2400 + Intel CC604/C602-J
9
10
11PREFERRED_VERSION_linux-yocto ?= "3.14%"
12
13require conf/machine/include/intel-corei7-64-common.inc
14require conf/machine/include/intel-common-pkgarch.inc
15require conf/machine/include/meta-intel.inc
16
17XSERVER ?= "${XSERVER_X86_BASE} \
18 ${XSERVER_X86_EXT} \
19 ${XSERVER_X86_MATROX_MGA} \
20 "
diff --git a/meta-romley/recipes-bsp/formfactor/formfactor/romley-ivb/machconfig b/meta-romley/recipes-bsp/formfactor/formfactor/romley-ivb/machconfig
deleted file mode 100644
index ffce0122..00000000
--- a/meta-romley/recipes-bsp/formfactor/formfactor/romley-ivb/machconfig
+++ /dev/null
@@ -1,3 +0,0 @@
1# Assume a USB mouse and keyboard are connected
2HAVE_TOUCHSCREEN=0
3HAVE_KEYBOARD=1
diff --git a/meta-romley/recipes-bsp/formfactor/formfactor/romley/machconfig b/meta-romley/recipes-bsp/formfactor/formfactor/romley/machconfig
deleted file mode 100644
index ffce0122..00000000
--- a/meta-romley/recipes-bsp/formfactor/formfactor/romley/machconfig
+++ /dev/null
@@ -1,3 +0,0 @@
1# Assume a USB mouse and keyboard are connected
2HAVE_TOUCHSCREEN=0
3HAVE_KEYBOARD=1
diff --git a/meta-romley/recipes-bsp/formfactor/formfactor_0.0.bbappend b/meta-romley/recipes-bsp/formfactor/formfactor_0.0.bbappend
deleted file mode 100644
index 72d991c7..00000000
--- a/meta-romley/recipes-bsp/formfactor/formfactor_0.0.bbappend
+++ /dev/null
@@ -1 +0,0 @@
1FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
diff --git a/meta-romley/recipes-extended/dpdk/dpdk.inc b/meta-romley/recipes-extended/dpdk/dpdk.inc
deleted file mode 100644
index 0547c7e8..00000000
--- a/meta-romley/recipes-extended/dpdk/dpdk.inc
+++ /dev/null
@@ -1,140 +0,0 @@
1DESCRIPTION = "Intel(r) Data Plane Development Kit"
2HOMEPAGE = "http://dpdk.org"
3LICENSE = "BSD & LGPLv2 & GPLv2"
4LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=751419260aa954499f7abaabaa882bbe"
5
6COMPATIBLE_MACHINE = "romley|romley-ivb"
7
8RDEPENDS_${PN} += "python-subprocess"
9
10inherit module
11
12export MODULE_DIR="/lib/modules/${KERNEL_VERSION}/kernel/drivers/net"
13export RTE_SDK = "${S}"
14export RTE_TARGET="${TARGET_ARCH}-ivshmem-${TARGET_OS}app-gcc"
15export ICP_ROOT = "${PKG_CONFIG_SYSROOT_DIR}/usr/include"
16export ICP_LIB_ROOT= "${PKG_CONFIG_SYSROOT_DIR}/usr/lib"
17export RTE_KERNELDIR = "${STAGING_KERNEL_DIR}"
18export INSTALL_PATH = "${prefix}/dpdk"
19
20
21do_configure () {
22 #############################################################
23 ### default value for prefix is "usr", unsetting it, so it
24 ### will not be concatenated in ${RTE_TARGET}/Makefile
25 ### which will cause compilation failure
26 #############################################################
27 unset prefix
28
29 make O=$RTE_TARGET T=$RTE_TARGET config
30
31}
32
33
34do_compile () {
35 unset LDFLAGS TARGET_LDFLAGS BUILD_LDFLAGS
36
37 cd ${S}/${RTE_TARGET}
38 oe_runmake EXTRA_LDFLAGS=" --sysroot=${STAGING_DIR_HOST}" \
39 EXTRA_CFLAGS=" --sysroot=${STAGING_DIR_HOST}" \
40 CROSS="${TARGET_PREFIX}" \
41 prefix="" LDFLAGS="" WERROR_FLAGS="-w" V=1
42
43}
44
45
46do_install () {
47
48 install -m 0755 -d ${D}/${INSTALL_PATH} \
49 ${D}/${INSTALL_PATH}/doc \
50 ${D}/${INSTALL_PATH}/tools \
51 ${D}/${INSTALL_PATH}/${RTE_TARGET} \
52 ${D}/${INSTALL_PATH}/${RTE_TARGET}/app \
53 ${D}${includedir} \
54 ${D}${includedir}/arch \
55 ${D}${includedir}/exec-env \
56 ${D}${libdir} \
57 ${D}${MODULE_DIR}
58
59 install -m 0755 ${S}/${RTE_TARGET}/kmod/igb_uio.ko ${D}${MODULE_DIR}/
60 install -m 0755 ${S}/${RTE_TARGET}/kmod/rte_kni.ko ${D}${MODULE_DIR}/
61
62 install -m 640 ${S}/${RTE_TARGET}/lib/*.a ${D}${libdir}
63
64 install -m 640 ${S}/${RTE_TARGET}/.config ${D}/${INSTALL_PATH}/${RTE_TARGET}/
65 install -m 640 ${S}/${RTE_TARGET}/include/*.h ${D}${includedir}/
66 install -m 640 ${S}/${RTE_TARGET}/include/arch/* ${D}${includedir}/arch/
67 install -m 640 ${S}/${RTE_TARGET}/include/exec-env/* ${D}${includedir}/exec-env/
68 install -m 0755 ${S}/tools/*.py ${D}/${INSTALL_PATH}/tools/
69
70
71 #Install test applications
72 install -m 0755 ${S}/${RTE_TARGET}/app/test ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
73 install -m 0755 ${S}/${RTE_TARGET}/app/testpmd ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
74 install -m 0755 ${S}/${RTE_TARGET}/app/dump_cfg ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
75 install -m 0755 ${S}/${RTE_TARGET}/app/cmdline_test ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
76
77
78 # Install example applications
79 # It is expected that user of this include file should define EXAMPLES_BUILD_DIR
80 for app in ${S}/examples/*
81 do
82 case `basename ${app}` in
83 "dpdk_qat" | "vhost" | "vhost_xen" | "Makefile" ) continue
84 ;;
85 "l2fwd-ivshmem")
86 install -m 0755 ${app}/guest/${EXAMPLES_BUILD_DIR}/app/guest ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
87 install -m 0755 ${app}/host/${EXAMPLES_BUILD_DIR}/app/host ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
88 continue
89 ;;
90 "multi_process")
91 install -m 0755 ${app}/client_server_mp/mp_client/${EXAMPLES_BUILD_DIR}/app/mp_client ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
92 install -m 0755 ${app}/client_server_mp/mp_server/${EXAMPLES_BUILD_DIR}/app/mp_server ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
93 install -m 0755 ${app}/simple_mp/${EXAMPLES_BUILD_DIR}/app/simple_mp ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
94 install -m 0755 ${app}/symmetric_mp/${EXAMPLES_BUILD_DIR}/app/symmetric_mp ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
95 continue
96 ;;
97 "netmap_compat")
98 install -m 0755 ${app}/bridge/${EXAMPLES_BUILD_DIR}/app/bridge ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
99 continue
100 ;;
101 "quota_watermark")
102 install -m 0755 ${app}/qw/${EXAMPLES_BUILD_DIR}/app/qw ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
103 install -m 0755 ${app}/qwctl/${EXAMPLES_BUILD_DIR}/app/qwctl ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
104 continue
105 ;;
106 "vmdq")
107 install -m 0755 ${app}/${EXAMPLES_BUILD_DIR}/app/`basename ${app}`_app ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
108 continue
109 ;;
110 "vmdq_dcb")
111 install -m 0755 ${app}/${EXAMPLES_BUILD_DIR}/app/`basename ${app}`_app ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
112 continue
113 ;;
114 esac
115
116 install -m 0755 ${app}/${EXAMPLES_BUILD_DIR}/app/`basename ${app}` ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
117 done
118}
119
120PACKAGES += "${PN}-examples"
121
122FILES_${PN}-dbg += " \
123 ${INSTALL_PATH}/.debug \
124 ${INSTALL_PATH}/${RTE_TARGET}/app/.debug \
125 "
126
127FILES_${PN}-doc += "\
128 ${INSTALL_PATH}/doc \
129 "
130
131FILES_${PN}-dev += " \
132 ${INSTALL_PATH}/${RTE_TARGET}/.config \
133 ${includedir} \
134 ${includedir}/arch \
135 ${includedir}/exec-env \
136 "
137
138FILES_${PN} += " ${INSTALL_PATH}/tools/ "
139
140FILES_${PN}-examples += " ${INSTALL_PATH}/${RTE_TARGET}/app/ "
diff --git a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch b/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch
deleted file mode 100644
index 87d2ef77..00000000
--- a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch
+++ /dev/null
@@ -1,53 +0,0 @@
1From cf953d2bfa7df9aa67459b333db4d4d8a9e72fd6 Mon Sep 17 00:00:00 2001
2From: Thomas Monjalon <thomas.monjalon@6wind.com>
3Date: Fri, 27 Jun 2014 11:21:11 +0200
4Subject: [PATCH] app/test: fix build switches to enable cmdline tests
5
6Upstream-Status: backport
7Imported patch from: http://dpdk.org/browse/dpdk/log/
8
9There were 2 typos since these commits (in 1.6.0 releases):
10 21a7f4e264 fix build without librte_cmdline
11 cac6d08c8b replace --use-device option by --pci-whitelist and --vdev
12In makefiles, the build options are prefixed with CONFIG_RTE_
13but in .c file, it is only RTE_.
14
15These typos were disabling cmdline unit tests and test of "--vdev eth_ring" option.
16
17Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
18Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
19Signed-off-by: Chan Wei Sern <wei.sern.chan@intel.com>
20---
21 app/test/test_cmdline.c | 2 +-
22 app/test/test_eal_flags.c | 2 +-
23 2 files changed, 2 insertions(+), 2 deletions(-)
24
25diff --git a/app/test/test_cmdline.c b/app/test/test_cmdline.c
26index 77475c4..10a3f77 100644
27--- a/app/test/test_cmdline.c
28+++ b/app/test/test_cmdline.c
29@@ -39,7 +39,7 @@
30 int
31 test_cmdline(void)
32 {
33-#ifdef CONFIG_RTE_LIBRTE_CMDLINE
34+#ifdef RTE_LIBRTE_CMDLINE
35 printf("Testind parsing ethernet addresses...\n");
36 if (test_parse_etheraddr_valid() < 0)
37 return -1;
38diff --git a/app/test/test_eal_flags.c b/app/test/test_eal_flags.c
39index a862654..1b80b80 100644
40--- a/app/test/test_eal_flags.c
41+++ b/app/test/test_eal_flags.c
42@@ -317,7 +317,7 @@ test_whitelist_flag(void)
43 const char *wlval3[] = {prgname, prefix, mp_flag, "-n", "1", "-c", "1",
44 pci_whitelist, "09:0B.3,type=test",
45 pci_whitelist, "08:00.1,type=normal",
46-#ifdef CONFIG_RTE_LIBRTE_PMD_RING
47+#ifdef RTE_LIBRTE_PMD_RING
48 vdev, "eth_ring,arg=test",
49 #endif
50 };
51--
521.9.1
53
diff --git a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch b/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch
deleted file mode 100644
index e724591e..00000000
--- a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch
+++ /dev/null
@@ -1,35 +0,0 @@
1From be1816f59e772e427fc5815281f9458a9314973a Mon Sep 17 00:00:00 2001
2From: Pablo de Lara <pablo.de.lara.guarch@intel.com>
3Date: Thu, 19 Jun 2014 16:35:22 +0100
4Subject: [PATCH] eal: fix option --base-virtaddr
5
6Upstream-Status: backport
7Imported patch from: http://dpdk.org/browse/dpdk/log/
8
9When parsing EAL option --base-virtaddr
10errno was not being set to 0 before calling strtoull,
11therefore function might fail unnecesarily.
12
13Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
14Signed-off-by: Aaron Campbell <aaron@arbor.net>
15Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
16Signed-off-by: Chan Wei Sern <wei.sern.chan@intel.com>
17---
18 lib/librte_eal/linuxapp/eal/eal.c | 1 +
19 1 file changed, 1 insertion(+)
20
21diff --git a/lib/librte_eal/linuxapp/eal/eal.c b/lib/librte_eal/linuxapp/eal/eal.c
22index 6994303..d204387 100644
23--- a/lib/librte_eal/linuxapp/eal/eal.c
24+++ b/lib/librte_eal/linuxapp/eal/eal.c
25@@ -562,6 +562,7 @@ eal_parse_base_virtaddr(const char *arg)
26 char *end;
27 uint64_t addr;
28
29+ errno = 0;
30 addr = strtoull(arg, &end, 16);
31
32 /* check for errors */
33--
341.9.1
35
diff --git a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch b/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch
deleted file mode 100644
index 47b5ece7..00000000
--- a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch
+++ /dev/null
@@ -1,35 +0,0 @@
1From ea9a59b26c3c86b498337e968ee8f68c4e263614 Mon Sep 17 00:00:00 2001
2From: Olivier Matz <olivier.matz@6wind.com>
3Date: Fri, 16 May 2014 10:18:59 +0200
4Subject: [PATCH] examples/qos_sched: fix makefile
5
6Upstream-Status: backport
7Imported patch from: http://dpdk.org/browse/dpdk/log/
8
9The example does not compile as the linker complains about duplicated
10symbols.
11
12Remove -lsched from LDLIBS, it is already present in rte.app.mk and
13added by the DPDK framework automatically.
14
15Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
16Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
17Signed-off-by: Chan Wei Sern <wei.sern.chan@intel.com>
18---
19 examples/qos_sched/Makefile | 2 --
20 1 file changed, 2 deletions(-)
21
22diff --git a/examples/qos_sched/Makefile b/examples/qos_sched/Makefile
23index b91fe37..9366efe 100755
24--- a/examples/qos_sched/Makefile
25+++ b/examples/qos_sched/Makefile
26@@ -54,6 +54,4 @@ CFLAGS += $(WERROR_FLAGS)
27 CFLAGS_args.o := -D_GNU_SOURCE
28 CFLAGS_cfg_file.o := -D_GNU_SOURCE
29
30-LDLIBS += -lrte_sched
31-
32 include $(RTE_SDK)/mk/rte.extapp.mk
33--
341.9.1
35
diff --git a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-examples-Add-config-variables-to-enable-disable-dpdk.patch b/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-examples-Add-config-variables-to-enable-disable-dpdk.patch
deleted file mode 100644
index d0721ca0..00000000
--- a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-examples-Add-config-variables-to-enable-disable-dpdk.patch
+++ /dev/null
@@ -1,42 +0,0 @@
1From 63f8ccc5a305b193e219d288ef9e43b9a9fa6aa8 Mon Sep 17 00:00:00 2001
2From: Sreeju Selvaraj <sreeju.armughanx.selvaraj@intel.com>
3Date: Wed, 17 Sep 2014 19:10:01 +0800
4Subject: [PATCH] examples: Add config variables to enable/disable dpdk_qat and
5 vhost
6
7Upstream-Status: Inappropriate [configuration]
8
9This can be used to export CONFIG_EXAMPLE_DPDK_QAT=n if dpdk_qat is not
10in PACKAGECONFIG and also allow to export CONFIG_EXAMPLE_DPDK_VHOST=n
11if vhost is not in PACKAGECONFIG.
12
13Signed-off-by: Sreeju Selvaraj <sreeju.armughanx.selvaraj@intel.com>
14---
15 examples/Makefile | 4 ++--
16 1 file changed, 2 insertions(+), 2 deletions(-)
17
18diff --git a/examples/Makefile b/examples/Makefile
19index d0624f6..885c938 100644
20--- a/examples/Makefile
21+++ b/examples/Makefile
22@@ -39,7 +39,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
23
24 DIRS-y += cmdline
25 ifneq ($(ICP_ROOT),)
26-DIRS-y += dpdk_qat
27+DIRS-$(CONFIG_EXAMPLE_DPDK_QAT) += dpdk_qat
28 endif
29 DIRS-y += exception_path
30 DIRS-y += helloworld
31@@ -61,7 +61,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_METER) += qos_meter
32 DIRS-$(CONFIG_RTE_LIBRTE_SCHED) += qos_sched
33 DIRS-y += quota_watermark
34 DIRS-y += timer
35-DIRS-y += vhost
36+DIRS-$(CONFIG_EXAMPLE_DPDK_VHOST) += vhost
37 DIRS-$(CONFIG_RTE_LIBRTE_XEN_DOM0) += vhost_xen
38 DIRS-y += vmdq
39 DIRS-y += vmdq_dcb
40--
411.9.1
42
diff --git a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-examples-pipeline-build-with-all-examples.patch b/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-examples-pipeline-build-with-all-examples.patch
deleted file mode 100644
index 25f029fe..00000000
--- a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-examples-pipeline-build-with-all-examples.patch
+++ /dev/null
@@ -1,34 +0,0 @@
1From 15aef6e666ee2eb0befa153d277d47754f3656e4 Mon Sep 17 00:00:00 2001
2From: Thomas Monjalon <thomas.monjalon@6wind.com>
3Date: Thu, 17 Jul 2014 10:30:52 +0200
4Subject: [PATCH] examples/pipeline: build with all examples
5
6Upstream-Status: Backport
7Imported patch from: http://dpdk.org/browse/dpdk/log/
8
9When adding this packet framework sample (commit 77a3346),
10it has been forgotten to add it into the global makefile for
11"make examples".
12
13Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
14(cherry picked from commit a6664a09a7caa5e63f9ae625cf1946b0eef7794e)
15Signed-off-by: Sreeju Selvaraj <sreeju.armughanx.selvaraj@intel.com>
16---
17 examples/Makefile | 1 +
18 1 file changed, 1 insertion(+)
19
20diff --git a/examples/Makefile b/examples/Makefile
21index 885c938..1788d6e 100644
22--- a/examples/Makefile
23+++ b/examples/Makefile
24@@ -43,6 +43,7 @@ DIRS-$(CONFIG_EXAMPLE_DPDK_QAT) += dpdk_qat
25 endif
26 DIRS-y += exception_path
27 DIRS-y += helloworld
28+DIRS-y += ip_pipeline
29 DIRS-y += ip_reassembly
30 DIRS-$(CONFIG_RTE_MBUF_SCATTER_GATHER) += ip_fragmentation
31 DIRS-$(CONFIG_RTE_MBUF_SCATTER_GATHER) += ipv4_multicast
32--
331.9.1
34
diff --git a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-ring-remove-extra-devices-creation-with-vdev-option.patch b/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-ring-remove-extra-devices-creation-with-vdev-option.patch
deleted file mode 100644
index 25a4ea80..00000000
--- a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-ring-remove-extra-devices-creation-with-vdev-option.patch
+++ /dev/null
@@ -1,44 +0,0 @@
1From 70d3d9a6757e0c56ad3c6da0292479433e16aed3 Mon Sep 17 00:00:00 2001
2From: Pablo de Lara <pablo.de.lara.guarch@intel.com>
3Date: Wed, 9 Jul 2014 15:35:35 +0100
4Subject: [PATCH] ring: remove extra devices creation with --vdev option
5
6Upstream-Status: Backport
7Imported patch from: http://dpdk.org/browse/dpdk/log/
8
9When passing extra arguments in EAL option --vdev, to create
10ring ethdevs, API was creating three ethdevs, even if there
11was just one argument, such as CREATE.
12
13Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
14Acked-by: Neil Horman <nhorman@tuxdriver.com>
15(cherry picked from commit 546afbc6827f9f0f7ed501d2af1fc51755e40224)
16Signed-off-by: Sreeju Selvaraj <sreeju.armughanx.selvaraj@intel.com>
17---
18 lib/librte_pmd_ring/rte_eth_ring.c | 3 +--
19 1 file changed, 1 insertion(+), 2 deletions(-)
20
21diff --git a/lib/librte_pmd_ring/rte_eth_ring.c b/lib/librte_pmd_ring/rte_eth_ring.c
22index 73c649e..4f1b6ed 100644
23--- a/lib/librte_pmd_ring/rte_eth_ring.c
24+++ b/lib/librte_pmd_ring/rte_eth_ring.c
25@@ -493,7 +493,6 @@ rte_pmd_ring_devinit(const char *name, const char *params)
26 eth_dev_ring_create(name, rte_socket_id(), DEV_CREATE);
27 return 0;
28 } else {
29- eth_dev_ring_create(name, rte_socket_id(), DEV_CREATE);
30 ret = rte_kvargs_count(kvlist, ETH_RING_NUMA_NODE_ACTION_ARG);
31 info = rte_zmalloc("struct node_action_list", sizeof(struct node_action_list) +
32 (sizeof(struct node_action_pair) * ret), 0);
33@@ -510,7 +509,7 @@ rte_pmd_ring_devinit(const char *name, const char *params)
34 goto out_free;
35
36 for (info->count = 0; info->count < info->total; info->count++) {
37- eth_dev_ring_pair_create(name, info->list[info->count].node,
38+ eth_dev_ring_create(name, info->list[info->count].node,
39 info->list[info->count].action);
40 }
41 }
42--
431.9.1
44
diff --git a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-ring-simplify-unit-tests.patch b/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-ring-simplify-unit-tests.patch
deleted file mode 100644
index c17137b2..00000000
--- a/meta-romley/recipes-extended/dpdk/dpdk/dpdk-1.7.0-ring-simplify-unit-tests.patch
+++ /dev/null
@@ -1,380 +0,0 @@
1From 545a5fac5d6bd0b64693dfcb15b321280418ac13 Mon Sep 17 00:00:00 2001
2From: Pablo de Lara <pablo.de.lara.guarch@intel.com>
3Date: Wed, 9 Jul 2014 15:35:36 +0100
4Subject: [PATCH] ring: simplify unit tests
5
6Upstream-Status: Backport
7Imported patch from: http://dpdk.org/browse/dpdk/log/
8
9As this unit test does not create devices anymore,
10and uses devices created by EAL option --vdev,
11there were unnecesary tests that were repeated,
12so they have been removed.
13
14So now there are three tests:
15
161 - Test two devices that share a ring, one device
17 with just one RX queue and the other with one
18 TX queue.
19
202 - Test a device connected to itself (loopback) by
21 a ring, with both RX and TX queue.
22
233 - Test two devices that share a ring, but both devices
24 with RX and TX queue, so they can send packets to themselves
25 and to the other device.
26
27Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
28Acked-by: Neil Horman <nhorman@tuxdriver.com>
29(cherry picked from commit 572eb3cd834c5e21d7fa946432b89c1c9d63fe61)
30Signed-off-by: Sreeju Selvaraj <sreeju.armughanx.selvaraj@intel.com>
31---
32 app/test/test_pmd_ring.c | 202 +++++++++++++++++------------------------------
33 1 file changed, 72 insertions(+), 130 deletions(-)
34
35diff --git a/app/test/test_pmd_ring.c b/app/test/test_pmd_ring.c
36index 0d3d95c..19ad0e9 100644
37--- a/app/test/test_pmd_ring.c
38+++ b/app/test/test_pmd_ring.c
39@@ -39,18 +39,13 @@
40 #include <rte_eth_ring.h>
41 #include <rte_ethdev.h>
42
43-/* two test rings, r1 is used by two ports, r2 just by one */
44-static struct rte_ring *r1[2], *r2;
45-
46 static struct rte_mempool *mp;
47-static uint8_t start_idx; /* will store the port id of the first of our new ports */
48-
49-#define TX_PORT (uint8_t)(start_idx + 1)
50-#define RX_PORT (uint8_t)(start_idx + 2)
51-#define RXTX_PORT (uint8_t)(start_idx + 3)
52-#define RXTX_PORT2 (uint8_t)(start_idx + 4)
53-#define RXTX_PORT4 (uint8_t)(start_idx + 6)
54-#define RXTX_PORT5 (uint8_t)(start_idx + 7)
55+
56+#define TX_PORT 0
57+#define RX_PORT 1
58+#define RXTX_PORT 2
59+#define RXTX_PORT2 3
60+#define RXTX_PORT3 4
61 #define SOCKET0 0
62
63 #define RING_SIZE 256
64@@ -86,7 +81,7 @@ test_ethdev_configure(void)
65 return -1;
66 }
67 if (rte_eth_dev_configure(RXTX_PORT, 1, 1, &null_conf) < 0) {
68- printf("Configure failed for RX port\n");
69+ printf("Configure failed for RXTX port\n");
70 return -1;
71 }
72
73@@ -250,197 +245,162 @@ test_stats_reset(void)
74 }
75
76 static int
77-test_pmd_ring_init(void)
78+test_pmd_ring_pair_create_attach(void)
79 {
80- struct rte_eth_stats stats;
81+ struct rte_eth_stats stats, stats2;
82 struct rte_mbuf buf, *pbuf = &buf;
83 struct rte_eth_conf null_conf;
84
85- printf("Testing ring pmd init\n");
86-
87- if (RXTX_PORT2 >= RTE_MAX_ETHPORTS) {
88+ if ((RXTX_PORT2 >= RTE_MAX_ETHPORTS) || (RXTX_PORT3 >= RTE_MAX_ETHPORTS)) {
89 printf(" TX/RX port exceed max eth ports\n");
90 return -1;
91 }
92- if (rte_eth_dev_configure(RXTX_PORT2, 1, 1, &null_conf) < 0) {
93+ if ((rte_eth_dev_configure(RXTX_PORT2, 1, 1, &null_conf) < 0)
94+ || (rte_eth_dev_configure(RXTX_PORT3, 1, 1, &null_conf) < 0)) {
95 printf("Configure failed for RXTX port\n");
96 return -1;
97 }
98
99- if (rte_eth_tx_queue_setup(RXTX_PORT2, 0, RING_SIZE, SOCKET0, NULL) < 0) {
100+ if ((rte_eth_tx_queue_setup(RXTX_PORT2, 0, RING_SIZE, SOCKET0, NULL) < 0)
101+ || (rte_eth_tx_queue_setup(RXTX_PORT3, 0, RING_SIZE, SOCKET0, NULL) < 0)) {
102 printf("TX queue setup failed\n");
103 return -1;
104 }
105
106- if (rte_eth_rx_queue_setup(RXTX_PORT2, 0, RING_SIZE, SOCKET0,
107- NULL, mp) < 0) {
108+ if ((rte_eth_rx_queue_setup(RXTX_PORT2, 0, RING_SIZE, SOCKET0, NULL, mp) < 0)
109+ || (rte_eth_rx_queue_setup(RXTX_PORT3, 0, RING_SIZE, SOCKET0, NULL, mp) < 0)) {
110 printf("RX queue setup failed\n");
111 return -1;
112 }
113
114- if (rte_eth_dev_start(RXTX_PORT2) < 0) {
115- printf("Error starting RX port\n");
116+ if ((rte_eth_dev_start(RXTX_PORT2) < 0)
117+ || (rte_eth_dev_start(RXTX_PORT3) < 0)) {
118+ printf("Error starting RXTX port\n");
119 return -1;
120 }
121
122- /* send and receive 1 packet and check for stats update */
123+ /*
124+ * send and receive 1 packet (RXTX_PORT2 -> RXTX_PORT3)
125+ * and check for stats update
126+ */
127 if (rte_eth_tx_burst(RXTX_PORT2, 0, &pbuf, 1) != 1) {
128 printf("Error sending packet to RXTX port\n");
129 return -1;
130 }
131
132- if (rte_eth_rx_burst(RXTX_PORT2, 0, &pbuf, 1) != 1) {
133+ if (rte_eth_rx_burst(RXTX_PORT3, 0, &pbuf, 1) != 1) {
134 printf("Error receiving packet from RXTX port\n");
135 return -1;
136 }
137
138 rte_eth_stats_get(RXTX_PORT2, &stats);
139- if (stats.ipackets != 1 || stats.opackets != 1 ||
140+ rte_eth_stats_get(RXTX_PORT3, &stats2);
141+ if (stats.ipackets != 0 || stats.opackets != 1 ||
142 stats.ibytes != 0 || stats.obytes != 0 ||
143 stats.ierrors != 0 || stats.oerrors != 0) {
144 printf("Error: RXTX port stats are not as expected\n");
145 return -1;
146 }
147
148- rte_eth_dev_stop(RXTX_PORT2);
149-
150- return 0;
151-}
152-
153-static int
154-test_pmd_ring_pair_create(void)
155-{
156- struct rte_eth_stats stats, stats2;
157- struct rte_mbuf buf, *pbuf = &buf;
158- struct rte_eth_conf null_conf;
159-
160- if ((RXTX_PORT4 >= RTE_MAX_ETHPORTS) || (RXTX_PORT5 >= RTE_MAX_ETHPORTS)) {
161- printf(" TX/RX port exceed max eth ports\n");
162- return -1;
163- }
164- if ((rte_eth_dev_configure(RXTX_PORT4, 1, 1, &null_conf) < 0)
165- || (rte_eth_dev_configure(RXTX_PORT5, 1, 1, &null_conf) < 0)) {
166- printf("Configure failed for RXTX port\n");
167- return -1;
168- }
169-
170- if ((rte_eth_tx_queue_setup(RXTX_PORT4, 0, RING_SIZE, SOCKET0, NULL) < 0)
171- || (rte_eth_tx_queue_setup(RXTX_PORT5, 0, RING_SIZE, SOCKET0, NULL) < 0)) {
172- printf("TX queue setup failed\n");
173- return -1;
174- }
175-
176- if ((rte_eth_rx_queue_setup(RXTX_PORT4, 0, RING_SIZE, SOCKET0, NULL, mp) < 0)
177- || (rte_eth_rx_queue_setup(RXTX_PORT5, 0, RING_SIZE, SOCKET0, NULL, mp) < 0)) {
178- printf("RX queue setup failed\n");
179- return -1;
180- }
181-
182- if ((rte_eth_dev_start(RXTX_PORT4) < 0)
183- || (rte_eth_dev_start(RXTX_PORT5) < 0)) {
184- printf("Error starting RXTX port\n");
185+ if (stats2.ipackets != 1 || stats2.opackets != 0 ||
186+ stats2.ibytes != 0 || stats2.obytes != 0 ||
187+ stats2.ierrors != 0 || stats2.oerrors != 0) {
188+ printf("Error: RXTX port stats are not as expected\n");
189 return -1;
190 }
191
192- /* send and receive 1 packet and check for stats update */
193- if (rte_eth_tx_burst(RXTX_PORT4, 0, &pbuf, 1) != 1) {
194+ /*
195+ * send and receive 1 packet (RXTX_PORT3 -> RXTX_PORT2)
196+ * and check for stats update
197+ */
198+ if (rte_eth_tx_burst(RXTX_PORT3, 0, &pbuf, 1) != 1) {
199 printf("Error sending packet to RXTX port\n");
200 return -1;
201 }
202
203- if (rte_eth_rx_burst(RXTX_PORT5, 0, &pbuf, 1) != 1) {
204+ if (rte_eth_rx_burst(RXTX_PORT2, 0, &pbuf, 1) != 1) {
205 printf("Error receiving packet from RXTX port\n");
206 return -1;
207 }
208
209- rte_eth_stats_get(RXTX_PORT4, &stats);
210- rte_eth_stats_get(RXTX_PORT5, &stats2);
211- if (stats.ipackets != 0 || stats.opackets != 1 ||
212+ rte_eth_stats_get(RXTX_PORT2, &stats);
213+ rte_eth_stats_get(RXTX_PORT3, &stats2);
214+ if (stats.ipackets != 1 || stats.opackets != 1 ||
215 stats.ibytes != 0 || stats.obytes != 0 ||
216 stats.ierrors != 0 || stats.oerrors != 0) {
217 printf("Error: RXTX port stats are not as expected\n");
218 return -1;
219 }
220
221- if (stats2.ipackets != 1 || stats2.opackets != 0 ||
222+ if (stats2.ipackets != 1 || stats2.opackets != 1 ||
223 stats2.ibytes != 0 || stats2.obytes != 0 ||
224 stats2.ierrors != 0 || stats2.oerrors != 0) {
225 printf("Error: RXTX port stats are not as expected\n");
226 return -1;
227 }
228
229- rte_eth_dev_stop(RXTX_PORT4);
230- rte_eth_dev_stop(RXTX_PORT5);
231-
232- return 0;
233-}
234-
235-static int
236-test_pmd_ring_pair_attach(void)
237-{
238- struct rte_eth_stats stats, stats2;
239- struct rte_mbuf buf, *pbuf = &buf;
240- struct rte_eth_conf null_conf;
241-
242- if ((RXTX_PORT4 >= RTE_MAX_ETHPORTS) || (RXTX_PORT5 >= RTE_MAX_ETHPORTS)) {
243- printf(" TX/RX port exceed max eth ports\n");
244- return -1;
245- }
246- if ((rte_eth_dev_configure(RXTX_PORT4, 1, 1, &null_conf) < 0)
247- || (rte_eth_dev_configure(RXTX_PORT5, 1, 1, &null_conf) < 0)) {
248- printf("Configure failed for RXTX port\n");
249+ /*
250+ * send and receive 1 packet (RXTX_PORT2 -> RXTX_PORT2)
251+ * and check for stats update
252+ */
253+ if (rte_eth_tx_burst(RXTX_PORT2, 0, &pbuf, 1) != 1) {
254+ printf("Error sending packet to RXTX port\n");
255 return -1;
256 }
257
258- if ((rte_eth_tx_queue_setup(RXTX_PORT4, 0, RING_SIZE, SOCKET0, NULL) < 0)
259- || (rte_eth_tx_queue_setup(RXTX_PORT5, 0, RING_SIZE, SOCKET0, NULL) < 0)) {
260- printf("TX queue setup failed\n");
261+ if (rte_eth_rx_burst(RXTX_PORT2, 0, &pbuf, 1) != 1) {
262+ printf("Error receiving packet from RXTX port\n");
263 return -1;
264 }
265
266- if ((rte_eth_rx_queue_setup(RXTX_PORT4, 0, RING_SIZE, SOCKET0, NULL, mp) < 0)
267- || (rte_eth_rx_queue_setup(RXTX_PORT5, 0, RING_SIZE, SOCKET0, NULL, mp) < 0)) {
268- printf("RX queue setup failed\n");
269+ rte_eth_stats_get(RXTX_PORT2, &stats);
270+ rte_eth_stats_get(RXTX_PORT3, &stats2);
271+ if (stats.ipackets != 2 || stats.opackets != 2 ||
272+ stats.ibytes != 0 || stats.obytes != 0 ||
273+ stats.ierrors != 0 || stats.oerrors != 0) {
274+ printf("Error: RXTX port stats are not as expected\n");
275 return -1;
276 }
277
278- if ((rte_eth_dev_start(RXTX_PORT4) < 0)
279- || (rte_eth_dev_start(RXTX_PORT5) < 0)) {
280- printf("Error starting RXTX port\n");
281+ if (stats2.ipackets != 1 || stats2.opackets != 1 ||
282+ stats2.ibytes != 0 || stats2.obytes != 0 ||
283+ stats2.ierrors != 0 || stats2.oerrors != 0) {
284+ printf("Error: RXTX port stats are not as expected\n");
285 return -1;
286 }
287
288- rte_eth_stats_reset(RXTX_PORT4);
289- rte_eth_stats_reset(RXTX_PORT5);
290-
291- /* send and receive 1 packet and check for stats update */
292- if (rte_eth_tx_burst(RXTX_PORT4, 0, &pbuf, 1) != 1) {
293+ /*
294+ * send and receive 1 packet (RXTX_PORT3 -> RXTX_PORT3)
295+ * and check for stats update
296+ */
297+ if (rte_eth_tx_burst(RXTX_PORT3, 0, &pbuf, 1) != 1) {
298 printf("Error sending packet to RXTX port\n");
299 return -1;
300 }
301- if (rte_eth_rx_burst(RXTX_PORT5, 0, &pbuf, 1) != 1) {
302+
303+ if (rte_eth_rx_burst(RXTX_PORT3, 0, &pbuf, 1) != 1) {
304 printf("Error receiving packet from RXTX port\n");
305 return -1;
306 }
307
308- rte_eth_stats_get(RXTX_PORT4, &stats);
309- rte_eth_stats_get(RXTX_PORT5, &stats2);
310- if (stats.ipackets != 0 || stats.opackets != 1 ||
311+ rte_eth_stats_get(RXTX_PORT2, &stats);
312+ rte_eth_stats_get(RXTX_PORT3, &stats2);
313+ if (stats.ipackets != 2 || stats.opackets != 2 ||
314 stats.ibytes != 0 || stats.obytes != 0 ||
315 stats.ierrors != 0 || stats.oerrors != 0) {
316 printf("Error: RXTX port stats are not as expected\n");
317 return -1;
318 }
319
320- if (stats2.ipackets != 1 || stats2.opackets != 0 ||
321+ if (stats2.ipackets != 2 || stats2.opackets != 2 ||
322 stats2.ibytes != 0 || stats2.obytes != 0 ||
323 stats2.ierrors != 0 || stats2.oerrors != 0) {
324 printf("Error: RXTX port stats are not as expected\n");
325 return -1;
326 }
327
328- rte_eth_dev_stop(RXTX_PORT4);
329- rte_eth_dev_stop(RXTX_PORT5);
330+ rte_eth_dev_stop(RXTX_PORT2);
331+ rte_eth_dev_stop(RXTX_PORT3);
332
333 return 0;
334 }
335@@ -448,17 +408,6 @@ test_pmd_ring_pair_attach(void)
336 int
337 test_pmd_ring(void)
338 {
339- r1[0] = rte_ring_create("R1", RING_SIZE, 0, 0);
340- r1[1] = rte_ring_create("R2", RING_SIZE, 0, 0);
341- if (r1[0] == NULL && (r1[0] = rte_ring_lookup("R1")) == NULL)
342- return -1;
343- if (r1[1] == NULL && (r1[1] = rte_ring_lookup("R2")) == NULL)
344- return -1;
345-
346- r2 = rte_ring_create("R3", RING_SIZE, 0, RING_F_SP_ENQ|RING_F_SC_DEQ);
347- if (r2 == NULL && (r2 = rte_ring_lookup("R3")) == NULL)
348- return -1;
349-
350 mp = rte_mempool_create("mbuf_pool", NB_MBUF,
351 MBUF_SIZE, 32,
352 sizeof(struct rte_pktmbuf_pool_private),
353@@ -468,8 +417,6 @@ test_pmd_ring(void)
354 if (mp == NULL)
355 return -1;
356
357- start_idx = rte_eth_dev_count();
358-
359 if ((TX_PORT >= RTE_MAX_ETHPORTS) || (RX_PORT >= RTE_MAX_ETHPORTS)\
360 || (RXTX_PORT >= RTE_MAX_ETHPORTS)) {
361 printf(" TX/RX port exceed max eth ports\n");
362@@ -492,14 +439,9 @@ test_pmd_ring(void)
363 rte_eth_dev_stop(TX_PORT);
364 rte_eth_dev_stop(RXTX_PORT);
365
366- if (test_pmd_ring_init() < 0)
367+ if (test_pmd_ring_pair_create_attach() < 0)
368 return -1;
369
370- if (test_pmd_ring_pair_create() < 0)
371- return -1;
372-
373- if (test_pmd_ring_pair_attach() < 0)
374- return -1;
375 return 0;
376 }
377
378--
3791.9.1
380
diff --git a/meta-romley/recipes-extended/dpdk/dpdk_1.6.0r2.bb b/meta-romley/recipes-extended/dpdk/dpdk_1.6.0r2.bb
deleted file mode 100644
index 72f57683..00000000
--- a/meta-romley/recipes-extended/dpdk/dpdk_1.6.0r2.bb
+++ /dev/null
@@ -1,45 +0,0 @@
1include dpdk.inc
2
3
4SRC_URI = "http://dpdk.org/browse/dpdk/snapshot/dpdk-${PV}.tar.gz;name=dpdk \
5 file://dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch \
6 file://dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch \
7 file://dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch \
8 "
9
10
11SRC_URI[dpdk.md5sum] = "f406d027320fc8e724bff20db5397cbb"
12SRC_URI[dpdk.sha256sum] = "e72fdebcf8a899fc58e60c9b6493b7457576eece60b08dea6aee96c9087df4b2"
13
14export EXAMPLES_BUILD_DIR = "build"
15
16do_compile_append () {
17
18 ###################################################################
19 ### Compilation for examples
20 ### Skip dpdk_qat due to it has dependency with qat source code
21 ### Skip vhost due to it has dependency to fuse libraries
22 ### Skip vhost_xen due to it has dependency to xen libraries
23 ###################################################################
24 for app in ${S}/examples/*
25 do
26
27 [ `basename ${app}` = "dpdk_qat" -o `basename ${app}` = "vhost" -o `basename ${app}` = "vhost_xen" ] && continue;
28
29 cd ${app}
30
31 ###############################################################
32 # netmap_compat is putting the binary in a directory path
33 # which is different from rest of the example apps, so this
34 # special case is handled here to avoid installation failure
35 # with dpdk-1.6.0
36 ###############################################################
37 if [ `basename ${app}` == "netmap_compat" ]; then
38 oe_runmake CROSS="${TARGET_PREFIX}" O="${app}/bridge/${EXAMPLES_BUILD_DIR}/"
39 else
40 oe_runmake CROSS="${TARGET_PREFIX}"
41 fi
42 done
43
44}
45
diff --git a/meta-romley/recipes-extended/dpdk/dpdk_1.7.0.bb b/meta-romley/recipes-extended/dpdk/dpdk_1.7.0.bb
deleted file mode 100644
index 581f1d4a..00000000
--- a/meta-romley/recipes-extended/dpdk/dpdk_1.7.0.bb
+++ /dev/null
@@ -1,41 +0,0 @@
1include dpdk.inc
2
3SRC_URI = "http://dpdk.org/browse/dpdk/snapshot/dpdk-${PV}.tar.gz;name=dpdk \
4 file://dpdk-1.7.0-examples-Add-config-variables-to-enable-disable-dpdk.patch \
5 file://dpdk-1.7.0-examples-pipeline-build-with-all-examples.patch \
6 file://dpdk-1.7.0-ring-remove-extra-devices-creation-with-vdev-option.patch \
7 file://dpdk-1.7.0-ring-simplify-unit-tests.patch \
8 "
9
10SRC_URI[dpdk.md5sum] = "07907d7b1a64888a459a971c45818038"
11SRC_URI[dpdk.sha256sum] = "aafc290260b5002d248ab8f8c8ffa76454d4b1382aa3c82ae2700ecce481397a"
12
13export EXAMPLES_BUILD_DIR = "${RTE_TARGET}"
14
15# dpdk example apps dpdk_qat and vhost have dependancy on fuse and qat.
16# fuse is in meta-filesystems and qat is not yet upstreamed.
17# So adding mechanism to explicitly disable the use of fuse and qat.
18# To enable, uncomment the below line or include in .bbappend.
19# PACKAGECONFIG ?= " dpdk_qat vhost "
20
21PACKAGECONFIG[dpdk_qat] = ",,qat"
22PACKAGECONFIG[vhost] = ",,fuse"
23
24do_compile_append () {
25
26 cd ${S}/examples/
27
28 # Disable the compilation of example apps dpdk_qat and vhost if they are
29 # not included in the PACKAGECONFIG
30 export CONFIG_EXAMPLE_DPDK_QAT=${@base_contains('PACKAGECONFIG', 'dpdk_qat', 'y', 'n', d)}
31 export CONFIG_EXAMPLE_DPDK_VHOST="${@base_contains('PACKAGECONFIG', 'vhost', 'y', 'n', d)}"
32
33 ###############################################################
34 # In order to make use of dpdk.inc for example app installation
35 # without failure, override the default build directory
36 ###############################################################
37 oe_runmake CROSS="${TARGET_PREFIX}" O="${S}/examples/$@/"
38}
39
40
41