From 80b175fa5dc5afbb62883e1d6152b55c0a786c2d Mon Sep 17 00:00:00 2001 From: Vasyl Vavrychuk Date: Thu, 15 Apr 2021 20:18:59 +0300 Subject: virtio: Bump virtio-aarch64 kernel to version v5.10. There are a number of virtio drivers [1,2] developed on top of newer kernel version. To simplify their backporting it is better to have newest possible kernel version. Use v5.10 since at the moment it is latest available Linux Yocto kernel. As a sacrifice, some external kernel modules have to be disabled since they fail to compile with newer kernel. Recipe imported from repo: https://git.yoctoproject.org/cgit/cgit.cgi/poky/ branch: master commit: a870101 path: meta/recipes-kernel/linux/linux-yocto_5.10.bb [1]: https://lore.kernel.org/alsa-devel/20210302164709.3142702-1-anton.yakovlev@opensynergy.com/ [2]: https://lore.kernel.org/linux-arm-kernel/20201105212116.411422-1-peter.hilber@opensynergy.com/ Bug-AGL: SPEC-3894 Change-Id: I8ac793c1075bdeaa96d03252b97abcf983bb7ee0 Signed-off-by: Vasyl Vavrychuk Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26290 Reviewed-by: Jan-Simon Moeller Tested-by: Jan-Simon Moeller --- meta-agl-bsp/conf/machine/include/virtio.inc | 11 ++++ .../recipes-kernel/linux/linux-yocto_5.10.bb | 58 ++++++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.10.bb (limited to 'meta-agl-bsp') diff --git a/meta-agl-bsp/conf/machine/include/virtio.inc b/meta-agl-bsp/conf/machine/include/virtio.inc index b4022d526..e10dc2622 100644 --- a/meta-agl-bsp/conf/machine/include/virtio.inc +++ b/meta-agl-bsp/conf/machine/include/virtio.inc @@ -15,6 +15,17 @@ RDEPENDS_${KERNEL_PACKAGE_NAME}-base = "" # Use a common kernel recipe for all VirtIO machines PREFERRED_PROVIDER_virtual/kernel ??= "linux-yocto" +# Use newer kernel +PREFERRED_VERSION_linux-yocto = "5.10.%" + +# Clear since it is set to 'sllin' in packagegroup-agl-demo.bb, and sllin is not +# compatible with kernel 5.10 at the moment. +LIN_DRIVERS = "" + +# Clear since it is set to 'lttng-modules' in packagegroup-core-tools-profile.bb, +# and lttng-modules are not compatible with 5.10 kernel used for virtio. +LTTNGMODULES_virtio-all = "" + EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native" IMAGE_CLASSES += "qemuboot" diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.10.bb b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.10.bb new file mode 100644 index 000000000..5e27e1fea --- /dev/null +++ b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.10.bb @@ -0,0 +1,58 @@ +KBRANCH ?= "v5.10/standard/base" + +require recipes-kernel/linux/linux-yocto.inc + +# board specific branches +KBRANCH_qemuarm ?= "v5.10/standard/arm-versatile-926ejs" +KBRANCH_qemuarm64 ?= "v5.10/standard/qemuarm64" +KBRANCH_qemumips ?= "v5.10/standard/mti-malta32" +KBRANCH_qemuppc ?= "v5.10/standard/qemuppc" +KBRANCH_qemuriscv64 ?= "v5.10/standard/base" +KBRANCH_qemuriscv32 ?= "v5.10/standard/base" +KBRANCH_qemux86 ?= "v5.10/standard/base" +KBRANCH_qemux86-64 ?= "v5.10/standard/base" +KBRANCH_qemumips64 ?= "v5.10/standard/mti-malta64" + +SRCREV_machine_qemuarm ?= "d8551cae1ccdbe062a5c6068ce39ea8f4e1c72db" +SRCREV_machine_qemuarm64 ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651" +SRCREV_machine_qemumips ?= "7f1f1ad2f2d90b1b070c6b0a82f0add9aa492e37" +SRCREV_machine_qemuppc ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651" +SRCREV_machine_qemuriscv64 ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651" +SRCREV_machine_qemuriscv32 ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651" +SRCREV_machine_qemux86 ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651" +SRCREV_machine_qemux86-64 ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651" +SRCREV_machine_qemumips64 ?= "fd5ac097b891642eea13659bea536f3ec5910d6d" +SRCREV_machine ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651" +SRCREV_meta ?= "031f6c76e488a3563f35258c72ff1de3e25a512e" + +# 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.10;destsuffix=${KMETA}" + +LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" +LINUX_VERSION ?= "5.10.25" + +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)}" \ No newline at end of file -- cgit 1.2.3-korg