[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emulate Rpi with QEMU fails

From: Peter Maydell
Subject: Re: Emulate Rpi with QEMU fails
Date: Sun, 4 Oct 2020 19:40:46 +0100

On Sun, 4 Oct 2020 at 18:44, Alex Bennée <alex.bennee@linaro.org> wrote:
> Thomas <74cmonty@gmail.com> writes:
> > I'm trying to emulate Rpi with QEMU.
> > I found
> > [url=1]this[/url]
> > arcticle in Raspberry Pi Geek documenting the steps including persistent
> > storage on host.
> >
> > However when starting the emulation with command
> > qemu-system-arm -M versatilepb -cpu arm1176 -m 256 -serial stdio -hda
> > 2020-08-20-raspios-buster-armhf-lite.img -net
> > "user,hostfwd=tcp::5022-:22" -dtb versatile-pb-buster.dtb -kernel
> > kernel-qemu-5.4.51-buster -append "root=/dev/sda2 rootfstype=ext4 rw
> > panic=1" -no-reboot
> Let's start with the fact you are using a versatilepb machine type with
> a versatilepb dtb and not the rasppi model.

Given the name of the kernel image, this probably actually *is*
built for versatilepb, or it wouldn't have got as far as failing
to mount the root partition. There seems to be a lot of confusion
in the raspberry pi community about the difference between
running the raspi userspace plus a for-versatilepb kernel
versus running a full raspi setup.

Anyway, failing to mount the rootfs and not listing any
sda devices is not a problem with the fstab, because the system
hasn't got as far as being able to mount the filesystem with a
fstab on it yet. One possibility is that the kernel is
missing the device drivers for either PCI or for the SCSI
controller that gets plugged in to versatilepb by default.

My guess at the cause is that you're trying to boot a Linux 5.something
kernel and you've run into the issue described in this thread:
where the Linux 5.x sym53c8xx scsi driver is not compatible with QEMU's
emulation of that device. If that's the case then you should see
earlier in the kernel boot log error messages similar to the ones
that Roger reported. The fix would be either to use an older
kernel, or to change the QEMU commandline to use a different
SCSI controller (or to use a virtio block device).

-- PMM

reply via email to

[Prev in Thread] Current Thread [Next in Thread]