For testing eMMC-specific functionality (such as handling boot partitions), it would be very useful to attach them to generic VMs such as x86_64 via the sdhci-pci device: ... -drive if=none,id=emmc-drive,file=emmc.img,format=raw \ -device sdhci-pci \ -device emmc,id=emmc0,drive=emmc-drive,boot-partition-size=1048576 \ ...
While most eMMCs are soldered to boards, they can also be connected to SD controllers with just a passive adapter, such as: https://docs.radxa.com/en/accessories/emmc-to-usd https://github.com/voltlog/emmc-wfbga153-microsd The only change necessary to make the options above work is to avoid disabling user_creatable, so do that. The SDHCI-PCI driver in the Linux kernel already supports this just fine. Signed-off-by: Jan Luebbe <j...@pengutronix.de> --- hw/sd/sd.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index a5d2d929a8af..2d3467c3d956 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -2865,8 +2865,6 @@ static void emmc_class_init(ObjectClass *klass, void *data) dc->desc = "eMMC"; dc->realize = emmc_realize; device_class_set_props(dc, emmc_properties); - /* Reason: Soldered on board */ - dc->user_creatable = false; sc->proto = &sd_proto_emmc; -- 2.39.5