diff options
author | Christopher Clark <christopher.clark@starlab.io> | 2021-07-27 17:07:40 -0700 |
---|---|---|
committer | Bruce Ashfield <bruce.ashfield@gmail.com> | 2021-07-29 10:55:56 -0400 |
commit | 19347a7c4e4cc3baf08923d6d42c086f170f1c63 (patch) | |
tree | 48f3bce1ba4e0fd3274b50ee9e643ecd6b42cee4 /recipes-extended | |
parent | 29796322c23ce6b425cd0adce380391b70f492df (diff) | |
download | meta-virtualization-19347a7c4e4cc3baf08923d6d42c086f170f1c63.tar.gz |
qemuboot, xen-image-minimal: enable runqemu for qemuarm64 Xen images
The Xen hypervisor built for Arm 64-bit targets can be launched with
runqemu by providing a Device Tree binary and configuration for Qemu,
which enables interactive testing of Xen images.
Add qemuboot-xen-dtb.bbclass to add a new bitbake task for generating
the dtb file by using lopper on a device tree produced by Qemu.
Add qemuboot-xen-defaults.bbclass to supply working default parameters
for the qemuarm64 machine and general support for qemuboot for Xen,
and adjust the defaults as needed to boot successfully in testing.
Development aided by this script by Stewart Hildebrand of DornerWorks:
https://gist.github.com/stewdk/110f43e0cc1d905fc6ed4c7e10d8d35e
Signed-off-by: Christopher Clark <christopher.clark@starlab.io>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Diffstat (limited to 'recipes-extended')
-rw-r--r-- | recipes-extended/images/xen-image-minimal.bb | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/recipes-extended/images/xen-image-minimal.bb b/recipes-extended/images/xen-image-minimal.bb index 6733801c..ca6d2683 100644 --- a/recipes-extended/images/xen-image-minimal.bb +++ b/recipes-extended/images/xen-image-minimal.bb | |||
@@ -31,7 +31,7 @@ XEN_PCIBACK_MODULE_x86-64 = "kernel-module-xen-pciback" | |||
31 | 31 | ||
32 | LICENSE = "MIT" | 32 | LICENSE = "MIT" |
33 | 33 | ||
34 | inherit core-image | 34 | inherit core-image qemuboot-xen-defaults qemuboot-xen-dtb |
35 | 35 | ||
36 | do_check_xen_state() { | 36 | do_check_xen_state() { |
37 | if [ "${@bb.utils.contains('DISTRO_FEATURES', 'xen', ' yes', 'no', d)}" = "no" ]; then | 37 | if [ "${@bb.utils.contains('DISTRO_FEATURES', 'xen', ' yes', 'no', d)}" = "no" ]; then |
@@ -74,10 +74,11 @@ build_syslinux_cfg () { | |||
74 | 74 | ||
75 | # Enable runqemu. eg: runqemu xen-image-minimal nographic slirp | 75 | # Enable runqemu. eg: runqemu xen-image-minimal nographic slirp |
76 | WKS_FILE_x86-64 = "directdisk-xen.wks" | 76 | WKS_FILE_x86-64 = "directdisk-xen.wks" |
77 | QB_MEM ?= "-m 400" | ||
78 | QB_DEFAULT_KERNEL ?= "none" | 77 | QB_DEFAULT_KERNEL ?= "none" |
79 | QB_DEFAULT_FSTYPE ?= "wic" | 78 | QB_DEFAULT_FSTYPE ?= "wic" |
79 | QB_DEFAULT_FSTYPE_qemux86-64 = "wic" | ||
80 | QB_FSINFO ?= "wic:kernel-in-fs" | 80 | QB_FSINFO ?= "wic:kernel-in-fs" |
81 | QB_SERIAL_OPT = "-serial mon:stdio" | ||
81 | # qemux86-64 machine does not include 'wic' in IMAGE_FSTYPES, which is needed | 82 | # qemux86-64 machine does not include 'wic' in IMAGE_FSTYPES, which is needed |
82 | # to boot this image, so add it here: | 83 | # to boot this image, so add it here: |
83 | IMAGE_FSTYPES_qemux86-64 += "wic" | 84 | IMAGE_FSTYPES_qemux86-64 += "wic" |