On Tue, May 10, 2022 at 8:35 AM Bertrand Marquis <[email protected]> wrote: > > Add required variables to generate a qemuboot devicetree for qemuarm. > With this change, Xen and dom0 can be started using runqemu. > > Xen is started using qemu kernel argument and the devicetree is modified > to properly boot dom0 (which is loaded in memory). > This is using the same system as qemuarm64. > > At this stage dom0 is hanging on PCI device scanning. > > This patch is also using qemuarm64 as machine for arm64 bit instead of > aarch64 to allow adding support for other machine (an example a Xilinx > board that can be emulated with using an other xen machine). > > Signed-off-by: Bertrand Marquis <[email protected]>
Reviewed-by: Christopher Clark <[email protected]> Christopher > --- > classes/qemuboot-xen-defaults.bbclass | 20 +++++++++++++++----- > 1 file changed, 15 insertions(+), 5 deletions(-) > > diff --git a/classes/qemuboot-xen-defaults.bbclass > b/classes/qemuboot-xen-defaults.bbclass > index c7e74c3..f1550cc 100644 > --- a/classes/qemuboot-xen-defaults.bbclass > +++ b/classes/qemuboot-xen-defaults.bbclass > @@ -10,15 +10,21 @@ DOM0_KERNEL ??= "${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}" > DOM0_KERNEL_LOAD_ADDR ??= "0x45000000" > QB_XEN_DOMAIN_MODULES ??= > "${DOM0_KERNEL}:${DOM0_KERNEL_LOAD_ADDR}:multiboot,kernel" > > -# Qemuboot for 64-bit Arm uses the QB_DEFAULT_KERNEL method to load Xen > +# Qemuboot for Arm uses the QB_DEFAULT_KERNEL method to load Xen > # and the device loader option for the dom0 kernel: > QB_OPT_APPEND:append:aarch64 = " \ > -device loader,file=${DOM0_KERNEL},addr=${DOM0_KERNEL_LOAD_ADDR} \ > " > -QB_DEFAULT_KERNEL:aarch64 = "xen-${MACHINE}" > +QB_OPT_APPEND:append:qemuarm = " \ > + -device loader,file=${DOM0_KERNEL},addr=${DOM0_KERNEL_LOAD_ADDR} \ > + " > +QB_DEFAULT_KERNEL:qemuarm64 = "xen-${MACHINE}" > +QB_DEFAULT_KERNEL:qemuarm = "xen-${MACHINE}" > > # 64-bit Arm: gic version 3 > -QB_MACHINE:aarch64 = "-machine virt,gic-version=3 -machine > virtualization=true" > +QB_MACHINE:qemuarm64 = "-machine virt,gic-version=3 -machine > virtualization=true" > +# 32-bit Arm > +QB_MACHINE:qemuarm = "-machine virt -machine virtualization=true" > > # Increase the default qemu memory allocation to allow for the hypervisor. > # Use a weak assignment to allow for change of default and override > elsewhere. > @@ -26,5 +32,9 @@ QB_MEM_VALUE ??= "512" > QB_MEM = "-m ${QB_MEM_VALUE}" > > # 64-bit Arm: qemuboot with a device tree binary > -QB_DTB:aarch64 = "${IMAGE_NAME}.qemuboot.dtb" > -QB_DTB_LINK:aarch64 = "${IMAGE_LINK_NAME}.qemuboot.dtb" > +QB_DTB:qemuarm64 = "${IMAGE_NAME}.qemuboot.dtb" > +QB_DTB_LINK:qemuarm64 = "${IMAGE_LINK_NAME}.qemuboot.dtb" > + > +# 32-bit Arm: qemuboot with a device tree binary > +QB_DTB:qemuarm = "${IMAGE_NAME}.qemuboot.dtb" > +QB_DTB_LINK:qemuarm = "${IMAGE_LINK_NAME}.qemuboot.dtb" > -- > 2.25.1 > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#7284): https://lists.yoctoproject.org/g/meta-virtualization/message/7284 Mute This Topic: https://lists.yoctoproject.org/mt/91015802/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
