virtio: Bump virtio-aarch64 kernel to version v5.10. 90/26290/3
authorVasyl Vavrychuk <vasyl.vavrychuk@opensynergy.com>
Thu, 15 Apr 2021 17:18:59 +0000 (20:18 +0300)
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Fri, 30 Apr 2021 16:58:41 +0000 (16:58 +0000)
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 <vasyl.vavrychuk@opensynergy.com>
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26290
Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
meta-agl-bsp/conf/machine/include/virtio.inc
meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.10.bb [new file with mode: 0644]

index b4022d5..e10dc26 100644 (file)
@@ -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 (file)
index 0000000..5e27e1f
--- /dev/null
@@ -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