1#@TYPE: Machine
2#@NAME: QEMU ARMv8 machine
3#@DESCRIPTION: Machine configuration for running an ARMv8 system on QEMU
4
5require conf/machine/include/arm/arch-armv8a.inc
6require conf/machine/include/qemu.inc
7
8KERNEL_IMAGETYPE = "Image"
9
10SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;hvc0"
11
12# For runqemu
13QB_SYSTEM_NAME = "qemu-system-aarch64"
14QB_MEM = "-m 512"
15QB_MACHINE = "-machine virt"
16QB_CPU = "-cpu cortex-a57"
17QB_CPU_KVM = "-cpu host"
18# Standard Serial console
19QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0"
20# For graphics to work we need to define the VGA device as well as the necessary USB devices
21QB_OPT_APPEND = "-show-cursor -device VGA,edid=on"
22QB_OPT_APPEND += "-device qemu-xhci -device usb-tablet -device usb-kbd"
23# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy
24QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0"
25# Virtio Networking support
26QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
27QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@"
28# Virtio block device
29QB_ROOTFS_OPT = "-drive id=disk0,file=@ROOTFS@,if=none,format=raw -device virtio-blk-device,drive=disk0"
30# Virtio serial console
31QB_SERIAL_OPT = "-device virtio-serial-device -chardev null,id=virtcon -device virtconsole,chardev=virtcon"
32QB_TCPSERIAL_OPT = "-device virtio-serial-device -chardev socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device virtconsole,chardev=virtcon"
33