meta-isg: Intel DPDK v1.6 recipe under recipes-extended

This is an initial version of Intel Data Plane Development Kits
(DPDK) recipe support. This recipe is targeting on Intel DPDK
v1.6.0r2.

Intel DPDK is needed for several IoTG maintained BSPs such as Crystal Forest & Highland Forest, Mohon Peak.
Therefore, we place DPDK recipe under meta-isg/common/recipes-extended folder.

This recipe is cherry-picked from branch dizzy and the commit ID:
c249763d3cb92bd06742b7986f08cf844ddb1d51:meta-intel/common: Initial Intel DPDK recipe under recipes-extended

This commit is removed in latest dizzy (1.7) due to build failure.
DPDK v1.7 & v1.6 are validated on Linux kernel v3.10 and not supported on Linux kernel v3.17.
Therefore, this recipe is intended to be supported only on Linux kernel v3.10 for all
CID related platforms like Crystal Forest and Highland Forest.

Signed-off-by: venkatasubramanian pattu <venkatasubramanianx.pattu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
This commit is contained in:
venkatasubramanian pattu 2015-05-08 12:08:50 +08:00 committed by Saul Wold
parent 578494c0c4
commit 829a48548f
4 changed files with 164 additions and 0 deletions

View File

@ -0,0 +1,52 @@
From cf953d2bfa7df9aa67459b333db4d4d8a9e72fd6 Mon Sep 17 00:00:00 2001
From: Thomas Monjalon <thomas.monjalon@6wind.com>
Date: Fri, 27 Jun 2014 11:21:11 +0200
Subject: [PATCH] app/test: fix build switches to enable cmdline tests
Upstream-Status: backport
Imported patch from: http://dpdk.org/browse/dpdk/log/
There were 2 typos since these commits (in 1.6.0 releases):
21a7f4e264 fix build without librte_cmdline
cac6d08c8b replace --use-device option by --pci-whitelist and --vdev
In makefiles, the build options are prefixed with CONFIG_RTE_
but in .c file, it is only RTE_.
These typos were disabling cmdline unit tests and test of "--vdev eth_ring" option.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Signed-off-by: Chan Wei Sern <wei.sern.chan@intel.com>
---
app/test/test_cmdline.c | 2 +-
app/test/test_eal_flags.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/test/test_cmdline.c b/app/test/test_cmdline.c
index 77475c4..10a3f77 100644
--- a/app/test/test_cmdline.c
+++ b/app/test/test_cmdline.c
@@ -39,7 +39,7 @@
int
test_cmdline(void)
{
-#ifdef CONFIG_RTE_LIBRTE_CMDLINE
+#ifdef RTE_LIBRTE_CMDLINE
printf("Testind parsing ethernet addresses...\n");
if (test_parse_etheraddr_valid() < 0)
return -1;
diff --git a/app/test/test_eal_flags.c b/app/test/test_eal_flags.c
index a862654..1b80b80 100644
--- a/app/test/test_eal_flags.c
+++ b/app/test/test_eal_flags.c
@@ -317,7 +317,7 @@ test_whitelist_flag(void)
const char *wlval3[] = {prgname, prefix, mp_flag, "-n", "1", "-c", "1",
pci_whitelist, "09:0B.3,type=test",
pci_whitelist, "08:00.1,type=normal",
-#ifdef CONFIG_RTE_LIBRTE_PMD_RING
+#ifdef RTE_LIBRTE_PMD_RING
vdev, "eth_ring,arg=test",
#endif
};
--
1.9.1

View File

@ -0,0 +1,34 @@
From be1816f59e772e427fc5815281f9458a9314973a Mon Sep 17 00:00:00 2001
From: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Date: Thu, 19 Jun 2014 16:35:22 +0100
Subject: [PATCH] eal: fix option --base-virtaddr
Upstream-Status: backport
Imported patch from: http://dpdk.org/browse/dpdk/log/
When parsing EAL option --base-virtaddr
errno was not being set to 0 before calling strtoull,
therefore function might fail unnecesarily.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Signed-off-by: Aaron Campbell <aaron@arbor.net>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Signed-off-by: Chan Wei Sern <wei.sern.chan@intel.com>
---
lib/librte_eal/linuxapp/eal/eal.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/lib/librte_eal/linuxapp/eal/eal.c b/lib/librte_eal/linuxapp/eal/eal.c
index 6994303..d204387 100644
--- a/lib/librte_eal/linuxapp/eal/eal.c
+++ b/lib/librte_eal/linuxapp/eal/eal.c
@@ -562,6 +562,7 @@ eal_parse_base_virtaddr(const char *arg)
char *end;
uint64_t addr;
+ errno = 0;
addr = strtoull(arg, &end, 16);
/* check for errors */
--
1.9.1

View File

@ -0,0 +1,34 @@
From ea9a59b26c3c86b498337e968ee8f68c4e263614 Mon Sep 17 00:00:00 2001
From: Olivier Matz <olivier.matz@6wind.com>
Date: Fri, 16 May 2014 10:18:59 +0200
Subject: [PATCH] examples/qos_sched: fix makefile
Upstream-Status: backport
Imported patch from: http://dpdk.org/browse/dpdk/log/
The example does not compile as the linker complains about duplicated
symbols.
Remove -lsched from LDLIBS, it is already present in rte.app.mk and
added by the DPDK framework automatically.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Signed-off-by: Chan Wei Sern <wei.sern.chan@intel.com>
---
examples/qos_sched/Makefile | 2 --
1 file changed, 2 deletions(-)
diff --git a/examples/qos_sched/Makefile b/examples/qos_sched/Makefile
index b91fe37..9366efe 100755
--- a/examples/qos_sched/Makefile
+++ b/examples/qos_sched/Makefile
@@ -54,6 +54,4 @@ CFLAGS += $(WERROR_FLAGS)
CFLAGS_args.o := -D_GNU_SOURCE
CFLAGS_cfg_file.o := -D_GNU_SOURCE
-LDLIBS += -lrte_sched
-
include $(RTE_SDK)/mk/rte.extapp.mk
--
1.9.1

View File

@ -0,0 +1,44 @@
include dpdk.inc
SRC_URI = "http://dpdk.org/browse/dpdk/snapshot/dpdk-${PV}.tar.gz;name=dpdk \
file://dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch \
file://dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch \
file://dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch \
"
SRC_URI[dpdk.md5sum] = "f406d027320fc8e724bff20db5397cbb"
SRC_URI[dpdk.sha256sum] = "e72fdebcf8a899fc58e60c9b6493b7457576eece60b08dea6aee96c9087df4b2"
export EXAMPLES_BUILD_DIR = "build"
do_compile_append () {
###################################################################
### Compilation for examples
### Skip dpdk_qat due to it has dependency with qat source code
### Skip vhost due to it has dependency to fuse libraries
### Skip vhost_xen due to it has dependency to xen libraries
###################################################################
for app in ${S}/examples/*
do
[ `basename ${app}` = "dpdk_qat" -o `basename ${app}` = "vhost" -o `basename ${app}` = "vhost_xen" ] && continue;
cd ${app}
###############################################################
# netmap_compat is putting the binary in a directory path
# which is different from rest of the example apps, so this
# special case is handled here to avoid installation failure
# with dpdk-1.6.0
###############################################################
if [ `basename ${app}` == "netmap_compat" ]; then
oe_runmake CROSS="${TARGET_PREFIX}" O="${app}/bridge/${EXAMPLES_BUILD_DIR}/"
else
oe_runmake CROSS="${TARGET_PREFIX}"
fi
done
}