From b538c0b005fd779ac26b58223771a09089b5092f Mon Sep 17 00:00:00 2001 From: Zygmunt Krynicki <zygmunt.krynicki@huawei.com> Date: Tue, 15 Feb 2022 13:26:55 +0000 Subject: [PATCH] oniro-{image,linux}: use x-gpt-efi-disk for QEMU x86 Similar to how the SECO board was handled, the QEMU x86 machine can now use EFI and GRUB correctly. This change is split over three parts, MACHINE_FEATURES is modified to enable efi, WKS_FILE_DEPENDS to build EFI firmware and lastly WKS_FILE to pick the new unified kick-start file. This was tested with: qemu-system-i386 -cpu IvyBridge -machine q35 -bios ovmf.qcow2 \ oniro-image-base-qemux86.wic -m 1024 -nographic Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@huawei.com> --- meta-oniro-core/classes/oniro-image.bbclass | 5 +++-- meta-oniro-core/conf/distro/oniro-linux.conf | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/meta-oniro-core/classes/oniro-image.bbclass b/meta-oniro-core/classes/oniro-image.bbclass index 5e8be077..cbf3e70d 100644 --- a/meta-oniro-core/classes/oniro-image.bbclass +++ b/meta-oniro-core/classes/oniro-image.bbclass @@ -38,11 +38,12 @@ IMAGE_FSTYPES:append:seco-intel-b68 = " wic.bz2 wic.bmap" # We avoid any other fstypes (for qemu) by default as the OS depends on a # specific partition table provided through the wic configuration. IMAGE_FSTYPES:qemux86 ?= "wic wic.bz2" -WKS_FILE:qemux86 ?= "x-qemux86-directdisk.wks.in" +WKS_FILE:qemux86 ?= "x-gpt-efi-disk.wks.in" IMAGE_FSTYPES:qemux86-64 ?= "wic wic.bz2" WKS_FILE:qemux86-64 ?= "x-gpt-efi-disk.wks.in" -# Build EFI firmware for x86-64 QEMU machine. +# Build EFI firmware for x86{,-64} QEMU machine. WKS_FILE_DEPENDS:qemux86-64 += "ovmf" +WKS_FILE_DEPENDS:qemux86 += "ovmf" WKS_FILE:qemu-generic-arm64 = "x-qemu-efi-disk.wks.in" IMAGE_FSTYPES:qemu-generic-arm64 += "wic wic.qcow2" diff --git a/meta-oniro-core/conf/distro/oniro-linux.conf b/meta-oniro-core/conf/distro/oniro-linux.conf index 71657de5..710f7ea5 100644 --- a/meta-oniro-core/conf/distro/oniro-linux.conf +++ b/meta-oniro-core/conf/distro/oniro-linux.conf @@ -90,8 +90,9 @@ PREFERRED_PROVIDER_virtual/kernel_qemu-generic-arm64 = "linux-oniro" # FIXME: allow GRUB to update the CPU microcode # https://booting.oniroproject.org/distro/oniro/-/issues/247 EFI_PROVIDER = "grub-efi" -# Add EFI to x86-64 QEMU machine features. +# Add EFI to x86{,-64} QEMU machine features. MACHINE_FEATURES:qemux86-64 += "efi" +MACHINE_FEATURES:qemux86 += "efi" # qemu-generic-arm64 specific requirements PREFERRED_VERSION_optee-os:qemu-generic-arm64 = "3.14.0" -- GitLab