aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@gmail.com>2021-07-02 11:13:48 -0400
committerAlexandre Belloni <alexandre.belloni@bootlin.com>2021-07-02 23:47:51 +0200
commitaf8071d437ec47e57d6ddfe6fa3391f25a00d9e4 (patch)
tree38c8c7497044b06927ce526abdb5ea60b69f3766
parent4e71f9d9a4f77539bc9e8d4c03a4c743f0e02fa6 (diff)
downloadopenembedded-core-contrib-af8071d437ec47e57d6ddfe6fa3391f25a00d9e4.tar.gz
openembedded-core-contrib-af8071d437ec47e57d6ddfe6fa3391f25a00d9e4.tar.bz2
openembedded-core-contrib-af8071d437ec47e57d6ddfe6fa3391f25a00d9e4.zip
linux-yocto: introduce 5.13 recipes
5.13 will be the next release/reference kernel (matched with a libc-headers version bump), this commit creates the recipes, but does not make it the default kernel (yet). This has been built and booted on all supported qemu platforms, as well as with musl and glibc based userspace stacks. Full core-image-kernel-dev, sato and minimal images have been tested and show no obvous issues (either locally or on the autobuilder). Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
-rw-r--r--meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb45
-rw-r--r--meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb32
-rw-r--r--meta/recipes-kernel/linux/linux-yocto_5.13.bb58
3 files changed, 135 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb b/meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb
new file mode 100644
index 00000000000..f87ab6bcfd3
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb
@@ -0,0 +1,45 @@
+KBRANCH ?= "v5.13/standard/preempt-rt/base"
+
+require recipes-kernel/linux/linux-yocto.inc
+
+# Skip processing of this recipe if it is not explicitly specified as the
+# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying
+# to build multiple virtual/kernel providers, e.g. as dependency of
+# core-image-rt-sdk, core-image-rt.
+python () {
+ if d.getVar("KERNEL_PACKAGE_NAME") == "kernel" and d.getVar("PREFERRED_PROVIDER_virtual/kernel") != "linux-yocto-rt":
+ raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
+}
+
+SRCREV_machine ?= "b1cead8d98582ca687f93e06438543b97144e5bf"
+SRCREV_meta ?= "ceb5fa598d08902fe2934c041875aa92d9a6fa19"
+
+SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \
+ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.13;destsuffix=${KMETA}"
+
+LINUX_VERSION ?= "5.13"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+
+DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
+DEPENDS += "openssl-native util-linux-native"
+
+PV = "${LINUX_VERSION}+git${SRCPV}"
+
+KMETA = "kernel-meta"
+KCONF_BSP_AUDIT_LEVEL = "1"
+
+LINUX_KERNEL_TYPE = "preempt-rt"
+
+COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm|qemuarmv5|qemuarm64|qemuppc|qemumips)"
+
+KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+
+# Functionality flags
+KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc"
+KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
+KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
diff --git a/meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb b/meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb
new file mode 100644
index 00000000000..f01133c7612
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb
@@ -0,0 +1,32 @@
+KBRANCH ?= "v5.13/standard/tiny/base"
+KBRANCH_qemuarm ?= "v5.13/standard/tiny/arm-versatile-926ejs"
+
+LINUX_KERNEL_TYPE = "tiny"
+KCONFIG_MODE = "--allnoconfig"
+
+require recipes-kernel/linux/linux-yocto.inc
+
+LINUX_VERSION ?= "5.13"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+
+DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
+DEPENDS += "openssl-native util-linux-native"
+
+KMETA = "kernel-meta"
+KCONF_BSP_AUDIT_LEVEL = "2"
+
+SRCREV_machine_qemuarm ?= "84e5292c5adf2e715e842a9eb3985034941e0798"
+SRCREV_machine ?= "b1cead8d98582ca687f93e06438543b97144e5bf"
+SRCREV_meta ?= "ceb5fa598d08902fe2934c041875aa92d9a6fa19"
+
+PV = "${LINUX_VERSION}+git${SRCPV}"
+
+SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \
+ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.13;destsuffix=${KMETA}"
+
+COMPATIBLE_MACHINE = "qemux86|qemux86-64|qemuarm|qemuarmv5"
+
+# Functionality flags
+KERNEL_FEATURES = ""
+
+KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
diff --git a/meta/recipes-kernel/linux/linux-yocto_5.13.bb b/meta/recipes-kernel/linux/linux-yocto_5.13.bb
new file mode 100644
index 00000000000..66384d8f7dd
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-yocto_5.13.bb
@@ -0,0 +1,58 @@
+KBRANCH ?= "v5.13/standard/base"
+
+require recipes-kernel/linux/linux-yocto.inc
+
+# board specific branches
+KBRANCH_qemuarm ?= "v5.13/standard/arm-versatile-926ejs"
+KBRANCH_qemuarm64 ?= "v5.13/standard/qemuarm64"
+KBRANCH_qemumips ?= "v5.13/standard/mti-malta32"
+KBRANCH_qemuppc ?= "v5.13/standard/qemuppc"
+KBRANCH_qemuriscv64 ?= "v5.13/standard/base"
+KBRANCH_qemuriscv32 ?= "v5.13/standard/base"
+KBRANCH_qemux86 ?= "v5.13/standard/base"
+KBRANCH_qemux86-64 ?= "v5.13/standard/base"
+KBRANCH_qemumips64 ?= "v5.13/standard/mti-malta64"
+
+SRCREV_machine_qemuarm ?= "9c2fd4b59ebf57f1900f82d49d6bf4fe074cf818"
+SRCREV_machine_qemuarm64 ?= "b1cead8d98582ca687f93e06438543b97144e5bf"
+SRCREV_machine_qemumips ?= "1ea414ef9e3a9744ec09f7ecebcc3b9aeffe39d0"
+SRCREV_machine_qemuppc ?= "b1cead8d98582ca687f93e06438543b97144e5bf"
+SRCREV_machine_qemuriscv64 ?= "b1cead8d98582ca687f93e06438543b97144e5bf"
+SRCREV_machine_qemuriscv32 ?= "b1cead8d98582ca687f93e06438543b97144e5bf"
+SRCREV_machine_qemux86 ?= "b1cead8d98582ca687f93e06438543b97144e5bf"
+SRCREV_machine_qemux86-64 ?= "b1cead8d98582ca687f93e06438543b97144e5bf"
+SRCREV_machine_qemumips64 ?= "b74fe3dcca0653609fcb75aad883b1db07619081"
+SRCREV_machine ?= "b1cead8d98582ca687f93e06438543b97144e5bf"
+SRCREV_meta ?= "ceb5fa598d08902fe2934c041875aa92d9a6fa19"
+
+# remap qemuarm to qemuarma15 for the 5.8 kernel
+# KMACHINE_qemuarm ?= "qemuarma15"
+
+SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH}; \
+ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.13;destsuffix=${KMETA}"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+LINUX_VERSION ?= "5.13"
+
+DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
+DEPENDS += "openssl-native util-linux-native"
+DEPENDS += "gmp-native"
+
+PV = "${LINUX_VERSION}+git${SRCPV}"
+
+KMETA = "kernel-meta"
+KCONF_BSP_AUDIT_LEVEL = "1"
+
+KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+
+COMPATIBLE_MACHINE = "qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemuppc64|qemumips|qemumips64|qemux86-64|qemuriscv64|qemuriscv32"
+
+# Functionality flags
+KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc"
+KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
+KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
+KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"