Re: [poky] [PATCH] genericarm64: add qemuboot configuration

Jose Quaresma <[email protected]>
Newsgroups org.yoctoproject.lists.poky
Message-ID <CANPvuRm8sFizLvd0zd9cRaedD2bJLMf4nPZaVJdcWAWEfB24YA@mail.gmail.com>
Hi Ross,

Ross Burton <[email protected]> escreveu (sexta, 22/03/2024 à(s) 16:50):

> From: Ross Burton <[email protected]>
>
> A basic SystemReady IR system can be provided by qemu-system-aarch64
> and u-boot, so tell u-boot to build the qemu_arm64 machine and configure
> qemuboot to start that u-boot and search the virtio-attached wic image
> for the EFI boot partition.
>
> Currently this machine support emulated (Cortex-A76) and virtualised (KVM)
> execution, and virtio storage/network/console.  Display support will be
> added shortly.
>
> Note that this machine still doesn't build U-Boot by default, as a u-boot
> binary for qemu in deploy would potentially confuse users who want to
> boot on real hardware and think this u-boot is needed.  If you wish to
> use genericarm64 with runqemu, you'll need to manually bitbake u-boot.
>

Why not have a new genericarm64-qemu.conf machine which includes this
machine
and adds all the required qemu bits.
In my opinion, this would be more friendly and clear.

Jose


>
> Signed-off-by: Ross Burton <[email protected]>
> ---
>  meta-yocto-bsp/conf/machine/genericarm64.conf | 27 +++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/meta-yocto-bsp/conf/machine/genericarm64.conf
> b/meta-yocto-bsp/conf/machine/genericarm64.conf
> index 7c4c76ffe0c..4afd6c3a870 100644
> --- a/meta-yocto-bsp/conf/machine/genericarm64.conf
> +++ b/meta-yocto-bsp/conf/machine/genericarm64.conf
> @@ -29,3 +29,30 @@ EFI_PROVIDER ?=
> "${@bb.utils.contains("DISTRO_FEATURES", "systemd", "systemd-boo
>
>  # Try to bring up one physical serial console, or a virtualized serial
> console
>  SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;hvc0"
> +
> +# Allow u-boot to be built for use with qemu-system-aarch64.
> +# This u-boot is _not_ suitable for use with real hardware, and the
> expectation
> +# of this machine is that real hardware comes with the firmware
> pre-loaded.
> +UBOOT_MACHINE = "qemu_arm64_defconfig"
> +
> +# runqemu configuration to run a genericarm64 image inside a
> qemu-system-aarch64. You will need
> +# to build u-boot explicitly.
> +IMAGE_CLASSES += "qemuboot"
> +QB_SYSTEM_NAME = "qemu-system-aarch64"
> +# Boot the virtual machine with either an emulated Cortex-A76, or the
> host if using KVM
> +QB_MACHINE = "-machine virt"
> +QB_CPU = "-cpu cortex-a76"
> +QB_CPU_KVM = "-cpu host -machine gic-version=3"
> +QB_SMP = "-smp 4"
> +# Boot into U-Boot and let that scan the disk for the next step, don't
> pass any kernel or filesystem hints
> +QB_DEFAULT_BIOS = "u-boot.bin"
> +QB_DEFAULT_KERNEL = "none"
> +QB_DEFAULT_FSTYPE = "wic"
> +QB_FSINFO = "wic:no-kernel-in-fs"
> +# Mount the wic rootfs as a virtio block device
> +QB_ROOTFS_OPT = "-drive id=root,file=@ROOTFS@,if=none,format=raw -device
> virtio-blk-pci,drive=root"
> +# Virtio serial consoles
> +QB_SERIAL_OPT = "-device virtio-serial-pci -chardev null,id=virtcon
> -device virtconsole,chardev=virtcon"
> +QB_TCPSERIAL_OPT = "-device virtio-serial-pci -chardev
> socket,id=virtcon,port=@PORT@,host=127.0.0.1,nodelay=on -device
> virtconsole,chardev=virtcon"
> +# Virtio networking
> +QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
> --
> 2.34.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#13312):
> https://lists.yoctoproject.org/g/poky/message/13312
> Mute This Topic: https://lists.yoctoproject.org/mt/105089249/5052612
> Group Owner: [email protected]
> Unsubscribe: https://lists.yoctoproject.org/g/poky/unsub [
> [email protected]]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>

-- 
Best regards,

José Quaresma
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.