summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRuiqiang Hao <Ruiqiang.Hao@windriver.com>2025-12-23 20:37:16 +0800
committerAnuj Mittal <anuj.mittal@oss.qualcomm.com>2025-12-23 18:13:55 +0530
commite465ffb6f89ed4bf37d3c85e40a85569b8b8bb30 (patch)
tree09d0cdd306601bcc37fee3b941598c2929ebc207
parent575d7113fc83e1664f14d193b382f7b18aeaea0a (diff)
downloadmeta-dpdk-e465ffb6f89ed4bf37d3c85e40a85569b8b8bb30.tar.gz
dpdk: upgrade 22.11.7 -> 25.11.0
Upgrade to DPDK 25.11 LTS release. - Update SRCREV and branch references - Update library path to pmds-26.0 - Remove dpdk-module - Remove patches that are no longer needed in 25.11.0: * 0001-Makefile-add-makefile.patch * 0001-meson.build-march-and-mcpu-already-passed-by-Yocto-21.11.patch - Set the cpu_instruction_set through EXTRA_OEMESON Signed-off-by: Ruiqiang Hao <Ruiqiang.Hao@windriver.com> Signed-off-by: Anuj Mittal <anuj.mittal@oss.qualcomm.com>
-rw-r--r--recipes-extended/dpdk/dpdk-module_22.11.7.bb49
-rw-r--r--recipes-extended/dpdk/dpdk/0001-Makefile-add-makefile.patch75
-rw-r--r--recipes-extended/dpdk/dpdk/0001-meson.build-march-and-mcpu-already-passed-by-Yocto-21.11.patch38
-rw-r--r--recipes-extended/dpdk/dpdk_25.11.0.bb (renamed from recipes-extended/dpdk/dpdk_22.11.7.bb)23
4 files changed, 13 insertions, 172 deletions
diff --git a/recipes-extended/dpdk/dpdk-module_22.11.7.bb b/recipes-extended/dpdk/dpdk-module_22.11.7.bb
deleted file mode 100644
index 1ce396c..0000000
--- a/recipes-extended/dpdk/dpdk-module_22.11.7.bb
+++ /dev/null
@@ -1,49 +0,0 @@
1include dpdk.inc
2
3FILESEXTRAPATHS:prepend := "${THISDIR}/dpdk:"
4
5SRC_URI += " \
6 file://0001-Makefile-add-makefile.patch \
7"
8STABLE = "-stable"
9BRANCH = "22.11"
10SRCREV = "077a7044cc5b2533410f691c8db6fb4f6667b1ca"
11
12inherit module
13
14#kernel module needs 'rte_build_config.h', which is generated at buid time
15DEPENDS += "dpdk"
16
17COMPATIBLE_MACHINE = "null"
18COMPATIBLE_HOST:libc-musl:class-target = "null"
19COMPATIBLE_HOST:linux-gnux32 = "null"
20
21export S
22export STAGING_KERNEL_DIR
23export STAGING_INCDIR
24export INSTALL_MOD_DIR = "dpdk"
25
26do_configure[noexec] = "1"
27
28do_compile() {
29 cd ${S}/kernel/linux/kni
30 unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
31 oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \
32 KERNEL_VERSION=${KERNEL_VERSION} \
33 CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
34 AR="${KERNEL_AR}" \
35 O=${STAGING_KERNEL_BUILDDIR} \
36 KBUILD_EXTRA_SYMBOLS="${KBUILD_EXTRA_SYMBOLS}" \
37 ${MAKE_TARGETS}
38}
39
40do_install() {
41 cd ${S}/kernel/linux/kni
42 unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
43 oe_runmake DEPMOD=echo MODLIB="${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}" \
44 INSTALL_FW_PATH="${D}${nonarch_base_libdir}/firmware" \
45 CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
46 O=${STAGING_KERNEL_BUILDDIR} \
47 ${MODULES_INSTALL_TARGET}
48}
49
diff --git a/recipes-extended/dpdk/dpdk/0001-Makefile-add-makefile.patch b/recipes-extended/dpdk/dpdk/0001-Makefile-add-makefile.patch
deleted file mode 100644
index 0fc849b..0000000
--- a/recipes-extended/dpdk/dpdk/0001-Makefile-add-makefile.patch
+++ /dev/null
@@ -1,75 +0,0 @@
1From 768cef60957d5e840071d1d6514d4add3f3c2904 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Wed, 14 Apr 2021 17:25:53 +0800
4Subject: [PATCH] Makefile: add makefile
5
6Current meson build for kernel module build does not fit in Yocto.
7So added Makefile to build rte_kni.ko
8
9Upstream-Status: Inappropriate
10
11Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
12---
13 kernel/linux/kni/Kbuild | 6 ------
14 kernel/linux/kni/Makefile | 35 +++++++++++++++++++++++++++++++++++
15 2 files changed, 35 insertions(+), 6 deletions(-)
16 delete mode 100644 kernel/linux/kni/Kbuild
17 create mode 100644 kernel/linux/kni/Makefile
18
19diff --git a/kernel/linux/kni/Kbuild b/kernel/linux/kni/Kbuild
20deleted file mode 100644
21index e5452d6c00..0000000000
22--- a/kernel/linux/kni/Kbuild
23+++ /dev/null
24@@ -1,6 +0,0 @@
25-# SPDX-License-Identifier: BSD-3-Clause
26-# Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
27-
28-ccflags-y := $(MODULE_CFLAGS)
29-obj-m := rte_kni.o
30-rte_kni-y := $(patsubst $(src)/%.c,%.o,$(wildcard $(src)/*.c))
31diff --git a/kernel/linux/kni/Makefile b/kernel/linux/kni/Makefile
32new file mode 100644
33index 0000000000..19897ee06e
34--- /dev/null
35+++ b/kernel/linux/kni/Makefile
36@@ -0,0 +1,35 @@
37+#
38+# Makefile for building rte_kni.ko
39+#
40+MODULE_CFLAGS += -include $(S)/config/rte_config.h
41+MODULE_CFLAGS += -I$(S)/lib/librte_eal/include
42+MODULE_CFLAGS += -I$(S)/lib/librte_kni
43+MODULE_CFLAGS += -I$(S)/kernel/linux/kni
44+MODULE_CFLAGS += -I$(S)/lib/kni
45+MODULE_CFLAGS += -I$(S)
46+MODULE_CFLAGS += -I$(STAGING_INCDIR)
47+
48+rte_kni-objs = kni_misc.o kni_net.o
49+
50+ccflags-y := $(MODULE_CFLAGS)
51+cflags-y := $(MODULE_CFLAGS)
52+obj-m := rte_kni.o
53+
54+
55+KERNEL_MAKE_OPTS := -C $(STAGING_KERNEL_DIR) M=$(CURDIR)
56+ifneq ($(ARCH),)
57+KERNEL_MAKE_OPTS += ARCH=$(ARCH)
58+endif
59+ifneq ($(CROSS_COMPILE),)
60+KERNEL_MAKE_OPTS += CROSS_COMPILE=$(CROSS_COMPILE)
61+endif
62+
63+build:
64+ $(MAKE) $(KERNEL_MAKE_OPTS) modules
65+
66+install: modules_install
67+
68+modules_install:
69+ $(MAKE) $(KERNEL_MAKE_OPTS) modules_install
70+
71+clean:
72+ $(MAKE) $(KERNEL_MAKE_OPTS) clean
73--
742.17.1
75
diff --git a/recipes-extended/dpdk/dpdk/0001-meson.build-march-and-mcpu-already-passed-by-Yocto-21.11.patch b/recipes-extended/dpdk/dpdk/0001-meson.build-march-and-mcpu-already-passed-by-Yocto-21.11.patch
deleted file mode 100644
index a74869d..0000000
--- a/recipes-extended/dpdk/dpdk/0001-meson.build-march-and-mcpu-already-passed-by-Yocto-21.11.patch
+++ /dev/null
@@ -1,38 +0,0 @@
1From 9aeb0bedf63f0f8f132194705b63ed0045452354 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Wed, 8 Dec 2021 11:48:27 +0800
4Subject: [PATCH] meson.build:-march and -mcpu already passed by Yocto
5
6Upstream-Status: Inappropriate
7
8Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
9---
10 config/meson.build | 12 ++++++------
11 1 file changed, 6 insertions(+), 6 deletions(-)
12
13diff --git a/config/meson.build b/config/meson.build
14index 805d5d51d0..620331a736 100644
15--- a/config/meson.build
16+++ b/config/meson.build
17@@ -127,12 +127,12 @@ dpdk_conf.set('RTE_MACHINE', cpu_instruction_set)
18 machine_args = []
19
20 # ppc64 does not support -march= at all, use -mcpu and -mtune for that
21-if host_machine.cpu_family().startswith('ppc')
22- machine_args += '-mcpu=' + cpu_instruction_set
23- machine_args += '-mtune=' + cpu_instruction_set
24-else
25- machine_args += '-march=' + cpu_instruction_set
26-endif
27+#if host_machine.cpu_family().startswith('ppc')
28+# machine_args += '-mcpu=' + cpu_instruction_set
29+# machine_args += '-mtune=' + cpu_instruction_set
30+#else
31+# machine_args += '-march=' + cpu_instruction_set
32+#endif
33
34 toolchain = cc.get_id()
35 dpdk_conf.set_quoted('RTE_TOOLCHAIN', toolchain)
36--
372.17.1
38
diff --git a/recipes-extended/dpdk/dpdk_22.11.7.bb b/recipes-extended/dpdk/dpdk_25.11.0.bb
index e69a2df..0978004 100644
--- a/recipes-extended/dpdk/dpdk_22.11.7.bb
+++ b/recipes-extended/dpdk/dpdk_25.11.0.bb
@@ -1,17 +1,20 @@
1include dpdk.inc 1include dpdk.inc
2 2
3SRC_URI += " \ 3SRC_URI += " file://0001-config-meson-get-cpu_instruction_set-from-meson-opti.patch"
4 file://0001-meson.build-march-and-mcpu-already-passed-by-Yocto-21.11.patch \
5"
6 4
7STABLE = "-stable" 5STABLE = "-stable"
8BRANCH = "22.11" 6BRANCH = "25.11"
9SRCREV = "077a7044cc5b2533410f691c8db6fb4f6667b1ca" 7SRCREV = "ed957165eadbe60a47d5ec223578cdd1c13d0bd9"
10 8
11# kernel module is provide by dpdk-module recipe, so disable here 9def get_cpu_instruction_set(bb, d):
12EXTRA_OEMESON = " -Denable_kmods=false \ 10 import re
13 -Dexamples=all \ 11 march = re.search(r'-march=([^\s]*)', d.getVar('CC'))
14" 12 if march:
13 return march.group(1)
14 else:
15 return "core2"
16
17EXTRA_OEMESON = " -Dexamples=all -Dcpu_instruction_set=${@get_cpu_instruction_set(bb, d)} "
15 18
16COMPATIBLE_MACHINE = "null" 19COMPATIBLE_MACHINE = "null"
17COMPATIBLE_HOST:libc-musl:class-target = "null" 20COMPATIBLE_HOST:libc-musl:class-target = "null"
@@ -49,7 +52,7 @@ PACKAGES =+ "${PN}-examples ${PN}-tools"
49FILES:${PN} += " ${bindir}/dpdk-testpmd \ 52FILES:${PN} += " ${bindir}/dpdk-testpmd \
50 ${bindir}/dpdk-proc-info \ 53 ${bindir}/dpdk-proc-info \
51 ${libdir}/*.so* \ 54 ${libdir}/*.so* \
52 ${libdir}/dpdk/pmds-23.0/*.so* \ 55 ${libdir}/dpdk/pmds-26.0/*.so* \
53 " 56 "
54FILES:${PN}-examples = " \ 57FILES:${PN}-examples = " \
55 ${prefix}/share/dpdk/examples/* \ 58 ${prefix}/share/dpdk/examples/* \