Thanks for figuring out that my QEMU version was too old! To get the
newer version of QEMU, I ended up compiling v9.1.0 from source. Ubuntu
now lists this version of QEMU as:
QEMU emulator version 9.1.0
Copyright (c) 2003-2024 Fabrice Bellard and the QEMU Project developers
I browsed the files for the v9.1.0 here [1] and saw that eMMC code
exists. I ran
./qemu-system-aarch64 -machine virt -device help | less
to check if there was an eMMC device for the virt board but I couldn't
find one. Does anyone know how to use an eMMC? Or if it's possible to
emulate an eMMC right now with the virt board on an arm64 guest?
Thanks,
Darius
On 2024-09-19 21:51, Mihai Moldovan wrote:
* On 9/19/24 23:59, darius.mca...@goldkey.com wrote:
[...]
QEMU emulator version 8.2.2 (Debian 1:8.2.2+ds-0ubuntu1.2)
Copyright (c) 2003-2023 Fabrice Bellard and the QEMU Project
developers
[...]
For the virt board, thesdhci-pci host controller is the only one I saw
supported, so I decided to use that. I didn't see an eMMC device, so I
chose sd-card. I'm hoping that I can create a drive that provides an
eMMC image to the sd-card that will allow me to test my SD host and
eMMC drivers. But I don't know how to create the eMMC image. I read
the qemu-img documentation but I'm still unsure how to do this.
So, my question is, how do I correctly emulate an eMMC on the virt
board?
I can't directly help with that question, but your Qemu version is too
old to support eMMC anyway.
According to
https://gitlab.com/qemu-project/qemu/-/commit/e2f346aa98646e84eabe0256f89d08e89b1837cf
you'll have to upgrade to 9.1.0.
Since you seem to be using Debian: unfortunately, bookworm-backports
only contains 9.0.2, just like trixie. Sid, however, does contain
9.1.0, which is your target version. Another viable option might be to
backport the version from sid to bookworm yourself, but I haven't
checked the dependencies to figure out whether that's easily possible.
Mihai
Links:
------
[1] https://gitlab.com/qemu-project/qemu/-/blob/v9.1.0/hw/sd/sd.c