From 44dc9ffbcb89213a9d3e60d00d5d739415ec9adf Mon Sep 17 00:00:00 2001 From: Vasyl Vavrychuk Date: Mon, 5 Oct 2020 08:47:43 +0300 Subject: meta-egvirt, templates: Add virtio-aarch64 machine This machine is intended to run in ARMv8 virtualized environment that provides VirtIO devices. AGL machine configuration files are based on qemuarm64 machine from meta-agl branch master commit e1da0efcd2eece82b0326798cfeaeb8dd48797fc. Yocto machine configuration files are based on qemuarm64 machine from Poky branch dunfell commit 4e931b1d05018923dc145cd97f6f965f5cb6e1a5. Yocto Linux Kernel is used as recommended in [1]. Its metadata for the created machine are based on qemuarm64-standard.scc from yocto-kernel-cache branch yocto-5.4 commit 4aeda12f7f7eb84613ae1fe6e22cd9cd9790c20b. The rationale behind creating new machine is a wish to have a machine that could run on other hypervisor/virtual machine monitor that implements VirtIO, not necessary QEMU. For now, virtio-aarch64 machine runs under QEMU and OpenSynergy COQOS Hypervisor. virtio-aarch64 machine includes following changes comparing to qemuarm64: * use virtio-gpu instead of VGA display (to be upstreamed to work in conjunction with runqemu gl, sdl, etc. options) * use virtio-bus instead of PCI bus QEMU devices * remove unneeded configurations [1]: https://www.yoctoproject.org/docs/3.1.2/bsp-guide/bsp-guide.html#released-bsp-recommendations Bug-AGL: SPEC-3668 Change-Id: Iccfee8613de63770d371a57f0caab1c1eba8d912 Signed-off-by: Vasyl Vavrychuk --- meta-egvirt/conf/machine/include/virtio.inc | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 meta-egvirt/conf/machine/include/virtio.inc (limited to 'meta-egvirt/conf/machine/include/virtio.inc') diff --git a/meta-egvirt/conf/machine/include/virtio.inc b/meta-egvirt/conf/machine/include/virtio.inc new file mode 100644 index 00000000..b4022d52 --- /dev/null +++ b/meta-egvirt/conf/machine/include/virtio.inc @@ -0,0 +1,23 @@ +PREFERRED_PROVIDER_virtual/egl ?= "mesa" +PREFERRED_PROVIDER_virtual/libgl ?= "mesa" +PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa" +PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa" + +MACHINE_FEATURES = "alsa usbgadget screen vfat" + +MACHINEOVERRIDES =. "virtio-all:" + +IMAGE_FSTYPES += "tar.bz2 ext4" + +# Don't include kernels in standard images +RDEPENDS_${KERNEL_PACKAGE_NAME}-base = "" + +# Use a common kernel recipe for all VirtIO machines +PREFERRED_PROVIDER_virtual/kernel ??= "linux-yocto" + +EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native" + +IMAGE_CLASSES += "qemuboot" + +# most driver fails to compile +MOST_DRIVERS ?= "" -- cgit 1.2.3-korg