Trying to run kernel-qemu-4.19.50-buster on virt
versatilepb works smoothly for me but the small amount of memory limits my usecase which requires atleast 1GB. QEMU has virt machine which has large amount of flexibility and support. I tried to use that quickly with the following command:
qemu-system-arm -M virt -m 2048 -kernel kernel-qemu-4.19.50-buster -dtb bcm2710-rpi-3-b.dtb -append "rw console=ttyAMA0 loglevel=8 root=/dev/mmcblk0p2 fsck.repair=yes rootwait memtest=1" -drive if=sd,file=2019-07-10-raspbian-buster-lite.img,format=raw,id=hd -device virtio-blk-device,drive=hd -netdev user,id=mynet -device virtio-net-device,netdev=mynet -serial stdio
However this leads to no output of any kind whatsoever.
After reading the script provided in tools directory, I believe it is a patched version of kernel source provided by Raspberry Pi's GitHub. However I am still confused about the parts where it is different from the standard raspbian kernel - kernel7l.img. And how these two kernels are different from debian-armhf kernel.
I would be grateful if you could help me with running qemu-kernel from this repo or standard raspbian kernel on a virt machine. I am able to run raspbian OS on raspi2 machine by QEMU using following command:
qemu-system-arm -M raspi2 -kernel kernel7l.img -dtb bcm2709-rpi-2-b.dtb -drive file=2019-07-10-raspbian-buster-lite.img,format=raw,if=sd -append "rw console=ttyAMA0 loglevel=8 root=/dev/mmcblk0p2 fsck.repair=yes rootwait memtest=1" -serial stdio
Hi Aditya,
I also tried Raspbian buster lite, but I can only boot upto the command line, nothing seen on the gui/display [Guest has not initialized the display (yet)] I'm using below command:
qemu-system-arm -kernel /home/nick/Downloads/kernel-qemu-4.19.50-buster -cpu arm1176 -dtb /home/ni ck/Downloads/versatile-pb.dtb -m 256 -M versatilepb -serial stdio -append "root=/dev/sda2 rootfstype=ext4 rw" -hda /home/nick /Downloads/raspbian-buster-lite.img -show-cursor
Were you able to get this working?
raspberry pi lite does not have a desktop GUI interface. It is command line only. Unless you have installed a desktop, the display will not initialize, that is normal.