summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorvenkatasubramanian pattu <venkatasubramanianx.pattu@intel.com>2015-05-08 12:08:50 +0800
committerSaul Wold <sgw@linux.intel.com>2015-06-02 12:35:00 -0700
commit829a48548fe545a6f9cefbf043e4440fc6c746bc (patch)
treee24f8fa00e77c56bcfb15bcc567d138b6549cc0d
parent578494c0c4715bb8d24972fa52850e89c36410a1 (diff)
downloadmeta-intel-829a48548fe545a6f9cefbf043e4440fc6c746bc.tar.gz
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>
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch52
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch34
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch34
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk_1.6.0r2.bb44
4 files changed, 164 insertions, 0 deletions
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch
new file mode 100644
index 00000000..8ca6bfe1
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch
@@ -0,0 +1,52 @@
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
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch
new file mode 100644
index 00000000..8204e5a1
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch
@@ -0,0 +1,34 @@
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
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch
new file mode 100644
index 00000000..d1eb8dcf
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch
@@ -0,0 +1,34 @@
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
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk_1.6.0r2.bb b/meta-isg/common/recipes-extended/dpdk/dpdk_1.6.0r2.bb
new file mode 100644
index 00000000..a507d4e9
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk_1.6.0r2.bb
@@ -0,0 +1,44 @@
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}