diff options
author | Mark Hatle <mark.hatle@windriver.com> | 2017-09-25 12:38:20 -0500 |
---|---|---|
committer | Saul Wold <sgw@linux.intel.com> | 2017-09-25 15:53:57 -0700 |
commit | a20d06d7e4b07c8ba12364a5262eeab8455235af (patch) | |
tree | 6e44e0b398476a5bf1662426864d9400c3ba7ca2 /meta-dpdk/recipes-extended/dpdk | |
parent | 9bf043497c48c45c425081989d142c68968a1385 (diff) | |
download | meta-intel-a20d06d7e4b07c8ba12364a5262eeab8455235af.tar.gz |
Move dpdk and qat components to meta-dpdk and meta-qat
meta-dpdk / meta-qat:
* Move content from meta-intel/common
* Create new basic README/LICENSE files from meta-intel
* Create new layer.conf files
* Fill out the maintainers files
meta-intel:
* update the maintainers files
* bump the meta-intel layer version
* add layer recommend
No other content changes made in this commit.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta-dpdk/recipes-extended/dpdk')
10 files changed, 539 insertions, 0 deletions
diff --git a/meta-dpdk/recipes-extended/dpdk/dpdk.inc b/meta-dpdk/recipes-extended/dpdk/dpdk.inc new file mode 100644 index 00000000..ba382675 --- /dev/null +++ b/meta-dpdk/recipes-extended/dpdk/dpdk.inc | |||
@@ -0,0 +1,150 @@ | |||
1 | DESCRIPTION = "Intel(r) Data Plane Development Kit" | ||
2 | HOMEPAGE = "http://dpdk.org" | ||
3 | LICENSE = "BSD & LGPLv2 & GPLv2" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=751419260aa954499f7abaabaa882bbe" | ||
5 | |||
6 | SRC_URI = "http://fast.dpdk.org/rel/${BP}.tar.gz;name=dpdk \ | ||
7 | file://dpdk-16.04-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch \ | ||
8 | file://dpdk-16.07-add-sysroot-option-within-app-makefile.patch \ | ||
9 | file://dpdk-16.04-Fix-for-misleading-indentation-error.patch \ | ||
10 | file://dpdk-16.04-dpdk-fix-compilation-with-dynamic-libs.patch \ | ||
11 | file://dpdk-16.07-dpdk-fix-for-parellel-make-issue.patch \ | ||
12 | file://dpdk-17.02-dpdk-fix-installation-warning-and-issue.patch \ | ||
13 | " | ||
14 | |||
15 | COMPATIBLE_MACHINE = "intel-corei7-64" | ||
16 | COMPATIBLE_HOST_libc-musl_class-target = "null" | ||
17 | |||
18 | |||
19 | # dpdk example apps dpdk_qat and vhost have dependancy on fuse and qat. | ||
20 | # fuse is in meta-filesystems and qat is not yet upstreamed. | ||
21 | # So adding mechanism to explicitly disable the use of fuse and qat. | ||
22 | # To enable, uncomment the below line or include in .bbappend. | ||
23 | # PACKAGECONFIG ?= " dpdk_qat vhost libvirt" | ||
24 | |||
25 | PACKAGECONFIG[dpdk_qat] = ",,virtual/qat" | ||
26 | PACKAGECONFIG[vhost] = ",,fuse" | ||
27 | PACKAGECONFIG[libvirt] = ",,libvirt" | ||
28 | |||
29 | export CONFIG_EXAMPLE_DPDK_QAT = "${@bb.utils.contains('PACKAGECONFIG', 'dpdk_qat', 'y', 'n', d)}" | ||
30 | export CONFIG_EXAMPLE_VM_POWER_MANAGER = "${@bb.utils.contains('PACKAGECONFIG', 'libvirt', 'y', 'n', d)}" | ||
31 | export CONFIG_VHOST_ENABLED = "${@bb.utils.contains('PACKAGECONFIG', 'vhost', 'y', 'n', d)}" | ||
32 | |||
33 | RDEPENDS_${PN} += "python-subprocess dpdk-dev-libibverbs" | ||
34 | DEPENDS = "virtual/kernel dpdk-dev-libibverbs" | ||
35 | do_configure[depends] += "virtual/kernel:do_shared_workdir" | ||
36 | |||
37 | inherit module | ||
38 | |||
39 | export MODULE_DIR="/lib/modules/${KERNEL_VERSION}/kernel/drivers/net" | ||
40 | export RTE_SDK = "${S}" | ||
41 | export RTE_TARGET="${@bb.utils.contains("TUNE_FEATURES", "m64", "x86_64-native-linuxapp-gcc", "i686-native-linuxapp-gcc", d)}" | ||
42 | |||
43 | export ICP_ROOT = "${PKG_CONFIG_SYSROOT_DIR}/usr/include" | ||
44 | export ICP_LIB_ROOT= "${PKG_CONFIG_SYSROOT_DIR}/usr/lib" | ||
45 | export RTE_KERNELDIR = "${STAGING_KERNEL_DIR}" | ||
46 | export RTE_KERNELDIR_OUT = "${STAGING_KERNEL_BUILDDIR}" | ||
47 | export INSTALL_PATH = "${prefix}/share" | ||
48 | export RTE_OUTPUT = "${S}/${RTE_TARGET}" | ||
49 | export ETHTOOL_LIB_PATH = "${S}/examples/ethtool/lib/${RTE_TARGET}/" | ||
50 | export SYSROOTPATH = "--sysroot=${STAGING_DIR_HOST}" | ||
51 | export DPDK_TARGET_MACH = "${@get_dpdk_target_mach(bb,d)}" | ||
52 | export ICP_LAC_API_DIR = "${STAGING_DIR_TARGET}${includedir}/lac" | ||
53 | |||
54 | # The list of intel Comms platforms and their target machine | ||
55 | # process mapping. The supported target machine is listed under | ||
56 | # dpdk/mk/machine | ||
57 | def get_dpdk_target_mach(bb, d): | ||
58 | target_arch = d.getVar('MACHINE_ARCH', True) | ||
59 | multiarch_options = { | ||
60 | "mohonpeak64": "atm", | ||
61 | "mohonpeak32": "atm", | ||
62 | "crystalforest": "ivb", | ||
63 | "intel_corei7_64": "atm", | ||
64 | } | ||
65 | |||
66 | if target_arch in multiarch_options : | ||
67 | return multiarch_options[target_arch] | ||
68 | return "default" | ||
69 | |||
70 | do_configure () { | ||
71 | ############################################################# | ||
72 | ### default value for prefix is "usr", unsetting it, so it | ||
73 | ### will not be concatenated in ${RTE_TARGET}/Makefile | ||
74 | ### which will cause compilation failure | ||
75 | ############################################################# | ||
76 | unset prefix | ||
77 | |||
78 | # Fix-up CONFIG_RTE_MACHINE based on target machine | ||
79 | sed -e "s#CONFIG_RTE_MACHINE=\"native\"#CONFIG_RTE_MACHINE=\"${DPDK_TARGET_MACH}\"#" -i ${S}/config/defconfig_x86_64-native-linuxapp-gcc | ||
80 | sed -e "s#CONFIG_RTE_MACHINE=\"native\"#CONFIG_RTE_MACHINE=\"${DPDK_TARGET_MACH}\"#" -i ${S}/config/defconfig_i686-native-linuxapp-gcc | ||
81 | |||
82 | # Fix-up vhost configs based on package config | ||
83 | sed -e "s#CONFIG_RTE_KNI_VHOST=n#CONFIG_RTE_KNI_VHOST=${CONFIG_VHOST_ENABLED}#" -i ${S}/config/common_linuxapp | ||
84 | sed -e "s#CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=n#CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=${CONFIG_VHOST_ENABLED}#" -i ${S}/config/common_linuxapp | ||
85 | sed -e "s#CONFIG_RTE_LIBRTE_VHOST=n#CONFIG_RTE_LIBRTE_VHOST=${CONFIG_VHOST_ENABLED}#" -i ${S}/config/common_linuxapp | ||
86 | |||
87 | make O=$RTE_TARGET T=$RTE_TARGET config | ||
88 | } | ||
89 | |||
90 | do_compile () { | ||
91 | unset LDFLAGS TARGET_LDFLAGS BUILD_LDFLAGS | ||
92 | |||
93 | cd ${S}/${RTE_TARGET} | ||
94 | oe_runmake EXTRA_LDFLAGS="-L${STAGING_LIBDIR} --hash-style=gnu" \ | ||
95 | EXTRA_CFLAGS="--sysroot=${STAGING_DIR_HOST} -I${STAGING_INCDIR}" \ | ||
96 | CROSS="${TARGET_PREFIX}" \ | ||
97 | prefix="" LDFLAGS="" WERROR_FLAGS="-w" V=1 | ||
98 | |||
99 | cd ${S}/examples/ | ||
100 | oe_runmake EXTRA_LDFLAGS="-L${STAGING_LIBDIR} --hash-style=gnu -fuse-ld=bfd" \ | ||
101 | EXTRA_CFLAGS="--sysroot=${STAGING_DIR_HOST} -I${STAGING_INCDIR}" \ | ||
102 | CROSS="${TARGET_PREFIX}" O="${S}/examples/$@/" | ||
103 | } | ||
104 | |||
105 | do_install () { | ||
106 | oe_runmake O=${RTE_OUTPUT} T= install-runtime DESTDIR=${D} | ||
107 | oe_runmake O=${RTE_OUTPUT} T= install-kmod DESTDIR=${D} kerneldir=${MODULE_DIR} | ||
108 | oe_runmake O=${RTE_OUTPUT} T= install-sdk DESTDIR=${D} | ||
109 | |||
110 | # Install examples | ||
111 | for dirname in ${S}/examples/* | ||
112 | do | ||
113 | install -m 0755 -d ${D}/${INSTALL_PATH}/examples/`basename ${dirname}` | ||
114 | |||
115 | for appname in `find ${dirname} -regex ".*${EXAMPLES_BUILD_DIR}\/app\/[-0-9a-zA-Z0-9/_]*$"` | ||
116 | do | ||
117 | install -m 755 ${appname} ${D}/${INSTALL_PATH}/examples/`basename ${dirname}`/ | ||
118 | done | ||
119 | done | ||
120 | } | ||
121 | |||
122 | PACKAGES += "${PN}-examples" | ||
123 | |||
124 | FILES_${PN}-dbg += " \ | ||
125 | ${INSTALL_PATH}/.debug \ | ||
126 | ${INSTALL_PATH}/examples/*/.debug \ | ||
127 | " | ||
128 | |||
129 | FILES_${PN}-doc += "\ | ||
130 | ${INSTALL_PATH}/doc \ | ||
131 | " | ||
132 | |||
133 | FILES_${PN}-dev += " \ | ||
134 | ${INSTALL_PATH}/${RTE_TARGET}/.config \ | ||
135 | ${includedir} \ | ||
136 | ${includedir}/${ARCHDIR} \ | ||
137 | ${includedir}/exec-env \ | ||
138 | ${INSTALL_PATH}/buildtools/ \ | ||
139 | ${INSTALL_PATH}/${RTE_TARGET}/include \ | ||
140 | ${INSTALL_PATH}/${RTE_TARGET}/lib \ | ||
141 | " | ||
142 | |||
143 | FILES_${PN} += " ${INSTALL_PATH}/usertools/ \ | ||
144 | ${prefix}/sbin/ \ | ||
145 | ${prefix}/bin/ \ | ||
146 | ${libdir}/ \ | ||
147 | " | ||
148 | FILES_${PN}-examples += " \ | ||
149 | ${INSTALL_PATH}/examples/* \ | ||
150 | " | ||
diff --git a/meta-dpdk/recipes-extended/dpdk/dpdk/0001-examples-Fix-maybe-uninitialized-warning.patch b/meta-dpdk/recipes-extended/dpdk/dpdk/0001-examples-Fix-maybe-uninitialized-warning.patch new file mode 100644 index 00000000..cc8041e7 --- /dev/null +++ b/meta-dpdk/recipes-extended/dpdk/dpdk/0001-examples-Fix-maybe-uninitialized-warning.patch | |||
@@ -0,0 +1,44 @@ | |||
1 | From 3924f5df5aca5ba23abbe9a84173280ede8be2dd Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Tue, 1 Aug 2017 20:18:46 -0700 | ||
4 | Subject: [PATCH] examples: Fix maybe-uninitialized warning | ||
5 | |||
6 | Initialize arrays to 0, makes compiler happy about | ||
7 | |||
8 | error: 'vals[0]' may be used uninitialized in this function [-Werror=maybe-uninitialized] | ||
9 | |||
10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
11 | --- | ||
12 | examples/qos_sched/args.c | 2 +- | ||
13 | examples/vhost/virtio_net.c | 2 +- | ||
14 | 2 files changed, 2 insertions(+), 2 deletions(-) | ||
15 | |||
16 | diff --git a/examples/qos_sched/args.c b/examples/qos_sched/args.c | ||
17 | index 476a0ee..fd601c3 100644 | ||
18 | --- a/examples/qos_sched/args.c | ||
19 | +++ b/examples/qos_sched/args.c | ||
20 | @@ -241,7 +241,7 @@ static int | ||
21 | app_parse_flow_conf(const char *conf_str) | ||
22 | { | ||
23 | int ret; | ||
24 | - uint32_t vals[5]; | ||
25 | + uint32_t vals[5] = {0}; | ||
26 | struct flow_conf *pconf; | ||
27 | uint64_t mask; | ||
28 | |||
29 | diff --git a/examples/vhost/virtio_net.c b/examples/vhost/virtio_net.c | ||
30 | index cc2c3d8..16b5392 100644 | ||
31 | --- a/examples/vhost/virtio_net.c | ||
32 | +++ b/examples/vhost/virtio_net.c | ||
33 | @@ -327,7 +327,7 @@ vs_dequeue_pkts(struct vhost_dev *dev, uint16_t queue_id, | ||
34 | { | ||
35 | struct vhost_queue *queue; | ||
36 | struct rte_vhost_vring *vr; | ||
37 | - uint32_t desc_indexes[MAX_PKT_BURST]; | ||
38 | + uint32_t desc_indexes[MAX_PKT_BURST] = {0}; | ||
39 | uint32_t used_idx; | ||
40 | uint32_t i = 0; | ||
41 | uint16_t free_entries; | ||
42 | -- | ||
43 | 2.13.3 | ||
44 | |||
diff --git a/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-Fix-for-misleading-indentation-error.patch b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-Fix-for-misleading-indentation-error.patch new file mode 100644 index 00000000..8786af7c --- /dev/null +++ b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-Fix-for-misleading-indentation-error.patch | |||
@@ -0,0 +1,56 @@ | |||
1 | From 8cd0a16af531cca0af6b4f9b729c252b8bdbf8e2 Mon Sep 17 00:00:00 2001 | ||
2 | From: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
3 | Date: Tue, 5 Jul 2016 00:05:25 +0800 | ||
4 | Subject: [PATCH] Fix for misleading indentation error | ||
5 | |||
6 | fix the indentation of the code to match the block structure. This may cause | ||
7 | build errors if you have -Wall -Werror in your project. | ||
8 | |||
9 | Signed-off-by: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
10 | --- | ||
11 | lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.c | 8 ++++---- | ||
12 | lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.c | 2 +- | ||
13 | 2 files changed, 5 insertions(+), 5 deletions(-) | ||
14 | |||
15 | diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.c b/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.c | ||
16 | index df22470..ba28eba 100644 | ||
17 | --- a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.c | ||
18 | +++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.c | ||
19 | @@ -3302,8 +3302,8 @@ s32 e1000_read_phy_reg_mphy(struct e1000_hw *hw, u32 address, u32 *data) | ||
20 | /* Disable access to mPHY if it was originally disabled */ | ||
21 | if (locked) | ||
22 | ready = e1000_is_mphy_ready(hw); | ||
23 | - if (!ready) | ||
24 | - return -E1000_ERR_PHY; | ||
25 | + if (!ready) | ||
26 | + return -E1000_ERR_PHY; | ||
27 | E1000_WRITE_REG(hw, E1000_MPHY_ADDR_CTRL, | ||
28 | E1000_MPHY_DIS_ACCESS); | ||
29 | |||
30 | @@ -3367,8 +3367,8 @@ s32 e1000_write_phy_reg_mphy(struct e1000_hw *hw, u32 address, u32 data, | ||
31 | /* Disable access to mPHY if it was originally disabled */ | ||
32 | if (locked) | ||
33 | ready = e1000_is_mphy_ready(hw); | ||
34 | - if (!ready) | ||
35 | - return -E1000_ERR_PHY; | ||
36 | + if (!ready) | ||
37 | + return -E1000_ERR_PHY; | ||
38 | E1000_WRITE_REG(hw, E1000_MPHY_ADDR_CTRL, | ||
39 | E1000_MPHY_DIS_ACCESS); | ||
40 | |||
41 | diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.c b/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.c | ||
42 | index 017dfe1..7248a7e 100644 | ||
43 | --- a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.c | ||
44 | +++ b/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.c | ||
45 | @@ -870,7 +870,7 @@ s32 ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, | ||
46 | if (speed & IXGBE_LINK_SPEED_10GB_FULL) | ||
47 | if (orig_autoc & IXGBE_AUTOC_KX4_SUPP) | ||
48 | autoc |= IXGBE_AUTOC_KX4_SUPP; | ||
49 | - if ((orig_autoc & IXGBE_AUTOC_KR_SUPP) && | ||
50 | + if ((orig_autoc & IXGBE_AUTOC_KR_SUPP) && | ||
51 | (hw->phy.smart_speed_active == false)) | ||
52 | autoc |= IXGBE_AUTOC_KR_SUPP; | ||
53 | if (speed & IXGBE_LINK_SPEED_1GB_FULL) | ||
54 | -- | ||
55 | 1.9.1 | ||
56 | |||
diff --git a/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch new file mode 100644 index 00000000..e446ce44 --- /dev/null +++ b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch | |||
@@ -0,0 +1,52 @@ | |||
1 | From 6c8d348190a8cf6c35111913cbf117ca98137e84 Mon Sep 17 00:00:00 2001 | ||
2 | From: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
3 | Date: Fri, 18 Dec 2015 18:30:47 +0800 | ||
4 | Subject: [PATCH] dpdk v2.2.0: add RTE_KERNELDIR_OUT to split kernel build | ||
5 | artifact | ||
6 | |||
7 | Introduce RTE_KERNELDIR_OUT to be the path to which kernel build | ||
8 | artifacts are located. This is for matching the workflow change | ||
9 | since Yocto Project v1.8 onwards whereby tmp/work-shared contains | ||
10 | separate directories for kernel source and kernel artifacts. | ||
11 | |||
12 | Upstream-Status: Inappropriate [configuration] | ||
13 | |||
14 | Signed-off-by: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
15 | --- | ||
16 | mk/rte.module.mk | 6 +++--- | ||
17 | 1 file changed, 3 insertions(+), 3 deletions(-) | ||
18 | |||
19 | diff --git a/mk/rte.module.mk b/mk/rte.module.mk | ||
20 | index 53ed4fe..b7a014b 100644 | ||
21 | --- a/mk/rte.module.mk | ||
22 | +++ b/mk/rte.module.mk | ||
23 | @@ -77,7 +77,7 @@ build: _postbuild | ||
24 | # build module | ||
25 | $(MODULE).ko: $(SRCS_LINKS) | ||
26 | @if [ ! -f $(notdir Makefile) ]; then ln -nfs $(SRCDIR)/Makefile . ; fi | ||
27 | - @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) \ | ||
28 | + @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR_OUT) \ | ||
29 | CC="$(KERNELCC)" CROSS_COMPILE=$(CROSS) V=$(if $V,1,0) | ||
30 | |||
31 | # install module in $(RTE_OUTPUT)/kmod | ||
32 | @@ -88,7 +88,7 @@ $(RTE_OUTPUT)/kmod/$(MODULE).ko: $(MODULE).ko | ||
33 | |||
34 | # install module | ||
35 | modules_install: | ||
36 | - @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) \ | ||
37 | + @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR_OUT) \ | ||
38 | modules_install | ||
39 | |||
40 | .PHONY: clean | ||
41 | @@ -98,7 +98,7 @@ clean: _postclean | ||
42 | .PHONY: doclean | ||
43 | doclean: | ||
44 | @if [ ! -f $(notdir Makefile) ]; then ln -nfs $(SRCDIR)/Makefile . ; fi | ||
45 | - $(Q)$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) clean | ||
46 | + $(Q)$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR_OUT) clean | ||
47 | @$(foreach FILE,$(SRCS-y) $(SRCS-n) $(SRCS-),\ | ||
48 | if [ -h $(notdir $(FILE)) ]; then rm -f $(notdir $(FILE)) ; fi ;) | ||
49 | @if [ -h $(notdir Makefile) ]; then rm -f $(notdir Makefile) ; fi | ||
50 | -- | ||
51 | 1.9.1 | ||
52 | |||
diff --git a/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-dpdk-enable-ip_fragmentation-in-common_base-config.patch b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-dpdk-enable-ip_fragmentation-in-common_base-config.patch new file mode 100644 index 00000000..3719aa78 --- /dev/null +++ b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-dpdk-enable-ip_fragmentation-in-common_base-config.patch | |||
@@ -0,0 +1,33 @@ | |||
1 | From f7be643cc62860a986c9e0aec990c90bfc58a941 Mon Sep 17 00:00:00 2001 | ||
2 | From: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
3 | Date: Fri, 1 Apr 2016 17:31:55 +0800 | ||
4 | Subject: [PATCH] dpdk: enable ip_fragmentation in common_base config | ||
5 | |||
6 | Upstream-Status: Inappropriate [Configuration] | ||
7 | |||
8 | This configuration need to set for ip_fragmentation application. | ||
9 | |||
10 | Signed-off-by: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
11 | --- | ||
12 | config/common_base | 5 +++++ | ||
13 | 1 file changed, 5 insertions(+) | ||
14 | |||
15 | diff --git a/config/common_base b/config/common_base | ||
16 | index abd6a64..90259f0 100644 | ||
17 | --- a/config/common_base | ||
18 | +++ b/config/common_base | ||
19 | @@ -442,6 +442,11 @@ CONFIG_RTE_LIBRTE_POWER_DEBUG=n | ||
20 | CONFIG_RTE_MAX_LCORE_FREQS=64 | ||
21 | |||
22 | # | ||
23 | +# Compile ip_fragmentation | ||
24 | +# | ||
25 | +CONFIG_RTE_IP_FRAG=y | ||
26 | + | ||
27 | +# | ||
28 | # Compile librte_net | ||
29 | # | ||
30 | CONFIG_RTE_LIBRTE_NET=y | ||
31 | -- | ||
32 | 1.9.1 | ||
33 | |||
diff --git a/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-dpdk-fix-compilation-with-dynamic-libs.patch b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-dpdk-fix-compilation-with-dynamic-libs.patch new file mode 100644 index 00000000..4254d073 --- /dev/null +++ b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.04-dpdk-fix-compilation-with-dynamic-libs.patch | |||
@@ -0,0 +1,30 @@ | |||
1 | From 8ce0e3249942a90f733bb2113e70e5a90ae67b00 Mon Sep 17 00:00:00 2001 | ||
2 | From: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
3 | Date: Thu, 21 Jul 2016 05:53:52 +0800 | ||
4 | Subject: [PATCH 1/2] dpdk: fix compilation with dynamic libs | ||
5 | |||
6 | Upstream-Status: Inappropriate [Configuration] | ||
7 | |||
8 | Ensure that the correct cflags are being used. | ||
9 | |||
10 | Signed-off-by: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
11 | --- | ||
12 | mk/rte.lib.mk | 2 +- | ||
13 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
14 | |||
15 | diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk | ||
16 | index 8f7e021..42610c9 100644 | ||
17 | --- a/mk/rte.lib.mk | ||
18 | +++ b/mk/rte.lib.mk | ||
19 | @@ -70,7 +70,7 @@ exe2cmd = $(strip $(call dotfile,$(patsubst %,%.cmd,$(1)))) | ||
20 | |||
21 | ifeq ($(LINK_USING_CC),1) | ||
22 | # Override the definition of LD here, since we're linking with CC | ||
23 | -LD := $(CC) $(CPU_CFLAGS) | ||
24 | +LD := $(CC) $(CPU_CFLAGS) $(EXTRA_CFLAGS) | ||
25 | _CPU_LDFLAGS := $(call linkerprefix,$(CPU_LDFLAGS)) | ||
26 | override EXTRA_LDFLAGS := $(call linkerprefix,$(EXTRA_LDFLAGS)) | ||
27 | else | ||
28 | -- | ||
29 | 1.9.1 | ||
30 | |||
diff --git a/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.07-add-sysroot-option-within-app-makefile.patch b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.07-add-sysroot-option-within-app-makefile.patch new file mode 100644 index 00000000..a4c47112 --- /dev/null +++ b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.07-add-sysroot-option-within-app-makefile.patch | |||
@@ -0,0 +1,32 @@ | |||
1 | From a33a9e7559b59bc5fb0988af85062436ec4389a4 Mon Sep 17 00:00:00 2001 | ||
2 | From: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
3 | Date: Fri, 19 Aug 2016 11:57:49 +0800 | ||
4 | Subject: [PATCH] dpdk: add --sysroot option within app makefile | ||
5 | |||
6 | Upstream-Status: Inappropriate [configuration] | ||
7 | |||
8 | rte.app.mk has been changed to add -Wl, to all items listed | ||
9 | under EXTRA_LDFLAGS. It causes --sysroot=<path> to not setup | ||
10 | correctly when we depends on gcc to setup for GNU ld. | ||
11 | |||
12 | Signed-off-by: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
13 | --- | ||
14 | mk/rte.app.mk | 2 +- | ||
15 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
16 | |||
17 | diff --git a/mk/rte.app.mk b/mk/rte.app.mk | ||
18 | index eb28e11..296c8c7 100644 | ||
19 | --- a/mk/rte.app.mk | ||
20 | +++ b/mk/rte.app.mk | ||
21 | @@ -195,7 +195,7 @@ exe2cmd = $(strip $(call dotfile,$(patsubst %,%.cmd,$(1)))) | ||
22 | ifeq ($(LINK_USING_CC),1) | ||
23 | O_TO_EXE = $(CC) -o $@ $(CFLAGS) $(OBJS-y) $(call linkerprefix, \ | ||
24 | $(LDLIBS) $(LDFLAGS) $(LDFLAGS_$(@)) $(EXTRA_LDFLAGS) \ | ||
25 | - $(MAPFLAGS)) | ||
26 | + $(MAPFLAGS)) $(SYSROOTPATH) | ||
27 | else | ||
28 | O_TO_EXE = $(LD) -o $@ $(OBJS-y) \ | ||
29 | $(LDLIBS) $(LDFLAGS) $(LDFLAGS_$(@)) $(EXTRA_LDFLAGS) \ | ||
30 | -- | ||
31 | 1.9.1 | ||
32 | |||
diff --git a/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.07-dpdk-fix-for-parellel-make-issue.patch b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.07-dpdk-fix-for-parellel-make-issue.patch new file mode 100644 index 00000000..fc965fa4 --- /dev/null +++ b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-16.07-dpdk-fix-for-parellel-make-issue.patch | |||
@@ -0,0 +1,42 @@ | |||
1 | From 4cdcb5ea4af9677677a007c4f9b286948123be87 Mon Sep 17 00:00:00 2001 | ||
2 | From: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
3 | Date: Fri, 2 Sep 2016 15:48:52 +0800 | ||
4 | Subject: [PATCH] dpdk: fix for parellel make issue | ||
5 | |||
6 | To make sure that the path of libraries should be correct and | ||
7 | libraries will be build before, And available at the time of | ||
8 | linking example apps. | ||
9 | |||
10 | Signed-off-by: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> | ||
11 | --- | ||
12 | examples/Makefile | 1 + | ||
13 | examples/ethtool/ethtool-app/Makefile | 1 + | ||
14 | 2 files changed, 2 insertions(+) | ||
15 | |||
16 | diff --git a/examples/Makefile b/examples/Makefile | ||
17 | index 18b41b9..c7c2beb 100644 | ||
18 | --- a/examples/Makefile | ||
19 | +++ b/examples/Makefile | ||
20 | @@ -43,6 +43,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_DISTRIBUTOR) += distributor | ||
21 | DIRS-$(CONFIG_RTE_LIBRTE_PMD_BOND) += bond | ||
22 | DIRS-y += cmdline | ||
23 | DIRS-$(CONFIG_RTE_LIBRTE_DISTRIBUTOR) += distributor | ||
24 | +DEPDIRS-y += examples/ethtool/lib | ||
25 | DIRS-y += ethtool | ||
26 | DIRS-y += exception_path | ||
27 | DIRS-y += helloworld | ||
28 | diff --git a/examples/ethtool/ethtool-app/Makefile b/examples/ethtool/ethtool-app/Makefile | ||
29 | index 09c66ad..ec068e6 100644 | ||
30 | --- a/examples/ethtool/ethtool-app/Makefile | ||
31 | +++ b/examples/ethtool/ethtool-app/Makefile | ||
32 | @@ -47,6 +47,7 @@ SRCS-y := main.c ethapp.c | ||
33 | CFLAGS += -O3 -D_GNU_SOURCE -pthread -I$(SRCDIR)/../lib | ||
34 | CFLAGS += $(WERROR_FLAGS) | ||
35 | |||
36 | +LDLIBS += -L$(ETHTOOL_LIB_PATH)/ | ||
37 | LDLIBS += -L$(subst ethtool-app,lib,$(RTE_OUTPUT))/lib | ||
38 | LDLIBS += -lrte_ethtool | ||
39 | |||
40 | -- | ||
41 | 1.9.1 | ||
42 | |||
diff --git a/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-17.02-dpdk-fix-installation-warning-and-issue.patch b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-17.02-dpdk-fix-installation-warning-and-issue.patch new file mode 100644 index 00000000..f5171674 --- /dev/null +++ b/meta-dpdk/recipes-extended/dpdk/dpdk/dpdk-17.02-dpdk-fix-installation-warning-and-issue.patch | |||
@@ -0,0 +1,81 @@ | |||
1 | From 363817bf84286fc167e0c3c255a7fd522bf87d8c Mon Sep 17 00:00:00 2001 | ||
2 | From: Shashwat Pandey <shashwatx.p@intel.com> | ||
3 | Date: Mon, 20 Feb 2017 15:46:22 +0800 | ||
4 | Subject: [PATCH] dpdk: fix installation warning and issue | ||
5 | |||
6 | Upstream-Status: Inappropriate [configuration] | ||
7 | |||
8 | Ensure that all compiled libs should be installed to correct location. | ||
9 | For cross compiling cp -r and extra tar flags used to avoid QA warning | ||
10 | [host-user-contaminated]. | ||
11 | Added excluded files from bin and removing mk and app/dpdk-pmdinfogen files | ||
12 | installation since it is not needed as a part of image. | ||
13 | |||
14 | Signed-off-by: Shashwat Pandey <shashwatx.p@intel.com> | ||
15 | --- | ||
16 | mk/rte.sdkinstall.mk | 29 ++++++++++++++--------------- | ||
17 | 1 file changed, 14 insertions(+), 15 deletions(-) | ||
18 | |||
19 | diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk | ||
20 | index dbac2a2..563954e 100644 | ||
21 | --- a/mk/rte.sdkinstall.mk | ||
22 | +++ b/mk/rte.sdkinstall.mk | ||
23 | @@ -115,16 +115,17 @@ endif | ||
24 | |||
25 | install-runtime: | ||
26 | $(Q)$(call rte_mkdir, $(DESTDIR)$(libdir)) | ||
27 | - $(Q)cp -a $O/lib/* $(DESTDIR)$(libdir) | ||
28 | + $(Q)cp -r $O/lib/* $(DESTDIR)$(libdir) | ||
29 | $(Q)$(call rte_mkdir, $(DESTDIR)$(bindir)) | ||
30 | - $(Q)tar -cf - -C $O --exclude 'app/*.map' \ | ||
31 | - --exclude app/dpdk-pmdinfogen \ | ||
32 | - --exclude 'app/cmdline*' --exclude app/test \ | ||
33 | - --exclude app/testacl --exclude app/testpipeline app | \ | ||
34 | - tar -xf - -C $(DESTDIR)$(bindir) --strip-components=1 \ | ||
35 | - --keep-newer-files | ||
36 | + $(Q)tar -cf - -C $O --exclude app/dpdk-pmdinfogen app | \ | ||
37 | + tar -xf - -C $(DESTDIR)$(bindir) --no-same-owner --no-same-permissions \ | ||
38 | + --strip-components=1 --keep-newer-files --warning=no-ignore-newer | ||
39 | $(Q)$(call rte_mkdir, $(DESTDIR)$(datadir)) | ||
40 | - $(Q)cp -a $(RTE_SDK)/usertools $(DESTDIR)$(datadir) | ||
41 | + $(Q)cp -r $(RTE_SDK)/usertools $(DESTDIR)$(datadir) | ||
42 | + $(Q)$(call rte_symlink, $(DESTDIR)$(datadir)/usertools/dpdk-setup.sh, \ | ||
43 | + $(DESTDIR)$(datadir)/usertools/setup.sh) | ||
44 | + $(Q)$(call rte_symlink, $(DESTDIR)$(datadir)/usertools/dpdk-devbind.py, \ | ||
45 | + $(DESTDIR)$(datadir)/usertools/dpdk_nic_bind.py) | ||
46 | $(Q)$(call rte_mkdir, $(DESTDIR)$(sbindir)) | ||
47 | $(Q)$(call rte_symlink, $(DESTDIR)$(datadir)/usertools/dpdk-devbind.py, \ | ||
48 | $(DESTDIR)$(sbindir)/dpdk-devbind) | ||
49 | @@ -142,7 +143,7 @@ endif | ||
50 | install-kmod: | ||
51 | ifneq ($(wildcard $O/kmod/*),) | ||
52 | $(Q)$(call rte_mkdir, $(DESTDIR)$(kerneldir)) | ||
53 | - $(Q)cp -a $O/kmod/* $(DESTDIR)$(kerneldir) | ||
54 | + $(Q)cp -r $O/kmod/* $(DESTDIR)$(kerneldir) | ||
55 | endif | ||
56 | |||
57 | install-sdk: | ||
58 | @@ -151,11 +152,9 @@ install-sdk: | ||
59 | tar -xf - -C $(DESTDIR)$(includedir) --strip-components=1 \ | ||
60 | --keep-newer-files | ||
61 | $(Q)$(call rte_mkdir, $(DESTDIR)$(sdkdir)) | ||
62 | - $(Q)cp -a $(RTE_SDK)/mk $(DESTDIR)$(sdkdir) | ||
63 | - $(Q)cp -a $(RTE_SDK)/buildtools $(DESTDIR)$(sdkdir) | ||
64 | - $(Q)$(call rte_mkdir, $(DESTDIR)$(targetdir)/app) | ||
65 | - $(Q)cp -a $O/.config $(DESTDIR)$(targetdir) | ||
66 | - $(Q)cp -a $O/app/dpdk-pmdinfogen $(DESTDIR)$(targetdir)/app | ||
67 | + $(Q)cp -r $(RTE_SDK)/buildtools $(DESTDIR)$(sdkdir) | ||
68 | + $(Q)$(call rte_mkdir, $(DESTDIR)$(targetdir)) | ||
69 | + $(Q)cp -r $O/.config $(DESTDIR)$(targetdir) | ||
70 | $(Q)$(call rte_symlink, $(DESTDIR)$(includedir), $(DESTDIR)$(targetdir)/include) | ||
71 | $(Q)$(call rte_symlink, $(DESTDIR)$(libdir), $(DESTDIR)$(targetdir)/lib) | ||
72 | |||
73 | @@ -171,4 +170,4 @@ ifneq ($(wildcard $O/doc/*/*/*pdf),) | ||
74 | $(Q)cp -a $O/doc/*/*/*pdf $(DESTDIR)$(docdir)/guides | ||
75 | endif | ||
76 | $(Q)$(call rte_mkdir, $(DESTDIR)$(datadir)) | ||
77 | - $(Q)cp -a $(RTE_SDK)/examples $(DESTDIR)$(datadir) | ||
78 | + $(Q)cp -r $(RTE_SDK)/examples $(DESTDIR)$(datadir) | ||
79 | -- | ||
80 | 1.9.1 | ||
81 | |||
diff --git a/meta-dpdk/recipes-extended/dpdk/dpdk_17.05.bb b/meta-dpdk/recipes-extended/dpdk/dpdk_17.05.bb new file mode 100644 index 00000000..1a696ede --- /dev/null +++ b/meta-dpdk/recipes-extended/dpdk/dpdk_17.05.bb | |||
@@ -0,0 +1,19 @@ | |||
1 | include dpdk.inc | ||
2 | |||
3 | SRC_URI += "\ | ||
4 | file://dpdk-16.04-dpdk-enable-ip_fragmentation-in-common_base-config.patch \ | ||
5 | file://0001-examples-Fix-maybe-uninitialized-warning.patch \ | ||
6 | " | ||
7 | |||
8 | SRC_URI[dpdk.md5sum] = "39c4e1110dd1ef9dab33edbae820f939" | ||
9 | SRC_URI[dpdk.sha256sum] = "763bfb7e1765efcc949e79d645dc9f1ebd16591431ba0db5ce22becd928dcd0a" | ||
10 | |||
11 | export EXAMPLES_BUILD_DIR = "${RTE_TARGET}" | ||
12 | export ARCHDIR = "generic" | ||
13 | |||
14 | do_configure_prepend () { | ||
15 | sed -e "s#CONFIG_RTE_LIBRTE_POWER=y#CONFIG_RTE_LIBRTE_POWER=${CONFIG_EXAMPLE_VM_POWER_MANAGER}#" -i ${S}/config/common_linuxapp | ||
16 | } | ||
17 | |||
18 | COMPATIBLE_HOST_linux-gnux32 = "null" | ||
19 | COMPATIBLE_HOST_libc-musl_class-target = "null" | ||