#@TYPE: Machine 
 | 
#@NAME: QEMU ARMv8 machine 
 | 
#@DESCRIPTION: Machine configuration for running an ARMv8 system on QEMU 
 | 
  
 | 
require conf/machine/include/arm/armv8a/tune-cortexa57.inc 
 | 
require conf/machine/include/qemu.inc 
 | 
  
 | 
KERNEL_IMAGETYPE = "Image" 
 | 
  
 | 
UBOOT_MACHINE ?= "qemu_arm64_defconfig" 
 | 
  
 | 
SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;hvc0" 
 | 
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}" 
 | 
  
 | 
# For runqemu 
 | 
QB_SYSTEM_NAME = "qemu-system-aarch64" 
 | 
QB_MACHINE = "-machine virt" 
 | 
QB_CPU = "-cpu cortex-a57" 
 | 
QB_SMP = "-smp 4" 
 | 
QB_CPU_KVM = "-cpu host -machine gic-version=3" 
 | 
# For graphics to work we need to define the VGA device as well as the necessary USB devices 
 | 
QB_GRAPHICS = "-device virtio-gpu-pci" 
 | 
QB_OPT_APPEND = "-device qemu-xhci -device usb-tablet -device usb-kbd" 
 | 
# Virtio Networking support 
 | 
QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no" 
 | 
QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@" 
 | 
# Virtio block device 
 | 
QB_ROOTFS_OPT = "-drive id=disk0,file=@ROOTFS@,if=none,format=raw -device virtio-blk-device,drive=disk0" 
 | 
# Virtio serial console 
 | 
QB_SERIAL_OPT = "-device virtio-serial-device -chardev null,id=virtcon -device virtconsole,chardev=virtcon" 
 | 
QB_TCPSERIAL_OPT = "-device virtio-serial-device -chardev socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device virtconsole,chardev=virtcon" 
 |