diff options
author | Scott Murray <scott.murray@konsulko.com> | 2024-07-08 12:51:15 -0400 |
---|---|---|
committer | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2024-07-09 09:32:15 +0000 |
commit | 6e274689443736549241f128992b5eedbafe5e91 (patch) | |
tree | 8f511686c326bc88164102dd3bb390970bbc124e /meta-agl-bsp | |
parent | 5606c3cbca6e23af22dbd54e0ea9f3dfdc4ad1d5 (diff) |
Rework virtio-aarch64 machine definition
Start on potentially removing separate virtio-arch64 machine by
simplifying it and moving as much of its virtio kernel configuration
over to our generic kernel configuration scheme. From some
experimentation, it is not obvious that genericarm64 or qemuarm64
are directly reusable as guest MACHINEs as is, so further
investigation is required on whether maintaining our own machine
and potentially custom kernel metadata cache is perhaps worthwhile.
Changes:
- Update virtio-aarch64 linux-yocto bbappend for new version in
scarthgap, and drop its use of a custom kernel metadata cache for
reusing qemuarm64's BSP as a starting point for now.
- Move the various virtio-*.cfg kernel configuration fragments over to
meta-agl-core, using a new "agl-virtio-guest" AGL_FEATURES flag to
control whether they are used. The aim is to make it more obvious
where any virtio kernel configuration comes from and hopefully make
it more easily reusable.
Bug-AGL: SPEC-5137, SPEC-5201
Change-Id: I861cd1f80643aca632a5ab103eae2cc46de3922e
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/30119
ci-image-build: Jenkins Job builder account
Tested-by: Jenkins Job builder account
Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
ci-image-boot-test: Jenkins Job builder account
Diffstat (limited to 'meta-agl-bsp')
6 files changed, 5 insertions, 48 deletions
diff --git a/meta-agl-bsp/conf/machine/include/virtio.inc b/meta-agl-bsp/conf/machine/include/virtio.inc index 6f8a638a0..1e4875b5d 100644 --- a/meta-agl-bsp/conf/machine/include/virtio.inc +++ b/meta-agl-bsp/conf/machine/include/virtio.inc @@ -15,9 +15,6 @@ 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.15.%" - EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native" IMAGE_CLASSES += "qemuboot" diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto-dev.bbappend b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto-dev.bbappend deleted file mode 100644 index 5970414eb..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto-dev.bbappend +++ /dev/null @@ -1,10 +0,0 @@ -FILESEXTRAPATHS:prepend := "${THISDIR}/linux-yocto:" - -SRC_URI:append:virtio-all = " \ - git://gerrit.automotivelinux.org/gerrit/src/agl-yocto-kernel-meta.git;protocol=https;type=kmeta;name=agl-meta;destsuffix=agl-kernel-meta;branch=master \ - file://virtio-aarch64-${LINUX_KERNEL_TYPE}.scc \ -" - -SRCREV_agl-meta = "c5008f4ba9e1b9f11c1014b53477079e605ceab7" - -COMPATIBLE_MACHINE:virtio-aarch64 = "virtio-aarch64" diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-aarch64-standard.scc b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-aarch64-standard.scc deleted file mode 100644 index 2d1570e9f..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-aarch64-standard.scc +++ /dev/null @@ -1,13 +0,0 @@ -# SPDX-License-Identifier: MIT -define KMACHINE virtio-aarch64 -define KTYPE standard -define KARCH arm64 - -include ktypes/standard/standard.scc nopatch -include arch/arm/aarch64.scc -include cfg/8250.scc -include cfg/virtio.scc -include bsp/virtio/agl-virtio.scc - -# enable the ability to run 32 bit apps -include arch/arm/32bit-compat.scc diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-drm.cfg b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-drm.cfg deleted file mode 100644 index 2facc345e..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-drm.cfg +++ /dev/null @@ -1,3 +0,0 @@ -CONFIG_DRM=y -CONFIG_FB=y -CONFIG_DRM_FBDEV_EMULATION=y diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-pci.cfg b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-pci.cfg deleted file mode 100644 index bbcaca312..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-pci.cfg +++ /dev/null @@ -1,3 +0,0 @@ -CONFIG_PCI=y -CONFIG_VIRTIO_PCI=y -CONFIG_PCI_HOST_GENERIC=y diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_6.6.bbappend b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_6.6.bbappend index 6952436a3..15cb9ea98 100644 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_6.6.bbappend +++ b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_6.6.bbappend @@ -1,17 +1,6 @@ -FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" - -# Cannot just append to SRC_URI, as the metadata interferes with the -# AGL config fragment scheme -AGL_KERNEL_SRC:prepend:virtio-all = " \ - git://gerrit.automotivelinux.org/gerrit/src/agl-yocto-kernel-meta.git;protocol=https;type=kmeta;name=agl-meta;destsuffix=agl-kernel-meta;branch=kernel-5.15 \ - file://virtio-aarch64-${LINUX_KERNEL_TYPE}.scc \ -" - -SRCREV_agl-meta = "4deb7357eab5962b0553a5ad1f11be5ac35f9da9" - -AGL_KCONFIG_FRAGMENTS:append:virtio-all = " \ - virtio-drm.cfg \ - virtio-pci.cfg \ -" - +# NOTE: Has to be in bbappend itself because BitBake does not fully +# parse recipes when checking it COMPATIBLE_MACHINE:virtio-aarch64 = "virtio-aarch64" + +# Reuse base qemuarm64 machine to avoid needing our own kernel metadata +KMACHINE:virtio-aarch64 = "qemuarm64"
\ No newline at end of file |