aspeed: Create sd devices only when defaults are enabled
When the -nodefaults option is set, sd devices should not be automatically created by the machine. Instead they should be defined on the command line. Note that it is not currently possible to define which bus an "sd-card" device is attached to: -blockdev node-name=drive0,driver=file,filename=/path/to/file.img \ -device sd-card,drive=drive0,id=sd0 and the first bus named "sd-bus" will be used. Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com> Acked-by: Philippe Mathieu-Daudé <philmd@linaro.org> Link: https://lore.kernel.org/qemu-devel/20250122070909.1138598-10-clg@redhat.com Signed-off-by: Cédric Le Goater <clg@redhat.com>
This commit is contained in:
parent
f7ae9612fb
commit
e90858464a
@ -456,14 +456,14 @@ static void aspeed_machine_init(MachineState *machine)
|
|||||||
amc->i2c_init(bmc);
|
amc->i2c_init(bmc);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < bmc->soc->sdhci.num_slots; i++) {
|
for (i = 0; i < bmc->soc->sdhci.num_slots && defaults_enabled(); i++) {
|
||||||
sdhci_attach_drive(&bmc->soc->sdhci.slots[i],
|
sdhci_attach_drive(&bmc->soc->sdhci.slots[i],
|
||||||
drive_get(IF_SD, 0, i), false, false);
|
drive_get(IF_SD, 0, i), false, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
boot_emmc = sc->boot_from_emmc(bmc->soc);
|
boot_emmc = sc->boot_from_emmc(bmc->soc);
|
||||||
|
|
||||||
if (bmc->soc->emmc.num_slots) {
|
if (bmc->soc->emmc.num_slots && defaults_enabled()) {
|
||||||
emmc0 = drive_get(IF_SD, 0, bmc->soc->sdhci.num_slots);
|
emmc0 = drive_get(IF_SD, 0, bmc->soc->sdhci.num_slots);
|
||||||
sdhci_attach_drive(&bmc->soc->emmc.slots[0], emmc0, true, boot_emmc);
|
sdhci_attach_drive(&bmc->soc->emmc.slots[0], emmc0, true, boot_emmc);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user