[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
signature.asc
Description: PGP signature