1PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot" 2 3require conf/machine/include/qemu.inc 4require conf/machine/include/riscv/tune-riscv.inc 5 6MACHINE_FEATURES = "screen keyboard ext2 ext3 serial" 7 8KERNEL_IMAGETYPE = "Image" 9KERNEL_IMAGETYPES += "uImage" 10KEEPUIMAGE = "no" 11 12SERIAL_CONSOLES ?= "115200;ttyS0 115200;hvc0" 13 14IMAGE_FSTYPES += "ext4 wic.qcow2" 15 16WKS_FILE ?= "qemuriscv.wks" 17 18MACHINE_EXTRA_RRECOMMENDS += " kernel-modules" 19 20EXTRA_IMAGEDEPENDS += "opensbi" 21RISCV_SBI_PLAT ?= "qemu/virt" 22RISCV_SBI_PAYLOAD ?= "${KERNEL_IMAGETYPE}-${MACHINE}.bin" 23 24UBOOT_ENTRYPOINT_riscv32 = "0x80400000" 25UBOOT_ENTRYPOINT_riscv64 = "0x80200000" 26 27# qemuboot options 28QB_KERNEL_CMDLINE_APPEND = "earlycon=sbi" 29QB_MACHINE = "-machine virt" 30QB_DEFAULT_BIOS = "fw_jump.elf" 31QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no" 32QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@" 33QB_ROOTFS_OPT = "-drive id=disk0,file=@ROOTFS@,if=none,format=raw -device virtio-blk-device,drive=disk0" 34QB_SERIAL_OPT = "-device virtio-serial-device -chardev null,id=virtcon -device virtconsole,chardev=virtcon" 35QB_TCPSERIAL_OPT = " -device virtio-serial-device -chardev socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device virtconsole,chardev=virtcon" 36# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy 37QB_OPT_APPEND = " -object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-device,rng=rng0" 38 39