qemu-devel
[Top][All Lists]
Advanced

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

Re: mips, nvme/pci boot regression (commit 145e2198d749)


From: Klaus Jensen
Subject: Re: mips, nvme/pci boot regression (commit 145e2198d749)
Date: Wed, 18 Jan 2023 08:24:20 +0100

On Jan 17 15:25, Philippe Mathieu-Daudé wrote:
> Hi Klaus,
> 
> On 17/1/23 13:30, Klaus Jensen wrote:
> > Hi Philippe,
> > 
> > Commit 145e2198d749 ("hw/mips/gt64xxx_pci: Endian-swap using
> > PCI_HOST_BRIDGE MemoryRegionOps") broke my mips64 nvme boot test
> > (little-endian host, mips64 and nvme boot device).
> > 
> > The pci device doesn't show up and the kernel panics.
> > 
> >    qemu-system-mips64 \
> >      -nodefaults -nographic -snapshot -no-reboot \
> >      -M "malta" -cpu "I6400" -m 512M \
> >      -nic user,model=pcnet \
> >      -drive file=images/rootfs.ext2,format=raw,if=none,id=d0 \
> >      -device nvme,serial=default,drive=d0 \
> >      -kernel images/vmlinux \
> >      -append "root=/dev/nvme0n1 console=ttyS0,115200" \
> >      -serial stdio
> 
> How do I get this images/ folder, or how do you generate
> the kernel / rootfs images?

It's a buildroot with the qemu_mips64r6_malta_defconfig. However, the
kernel must be at least v6.2-rc3 and a potential fix for pin-based
interrupts[1] (other fixes are being discussed) must be applied. On
older kernels the device should show up, but it will be broken (issue on
big-endian with shadow doorbells and occasional timeouts due to the
kernel missing interrupts).

If you don't want to mess with that, I put the images on github[2] (the
kernel is v6.2-rc4 + my potential nvme driver fix). Just gunzip
rootfs.ext2.gz.

  [1]: https://lore.kernel.org/linux-nvme/Y8W+H6T9DOZ08SoF@cormorant.local/
  [2]: https://github.com/birkelund/qemu-nvme-boot

Attachment: signature.asc
Description: PGP signature


reply via email to

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