diff options
author | Thomas Huth <thuth@redhat.com> | 2018-03-07 10:24:04 +0100 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2018-03-12 16:12:47 +0100 |
commit | 148b2ba1145af29a7afac349b8169790e06d6df4 (patch) | |
tree | 2012d476bace0df6d33a0328110ceb5229473365 /hw/mips | |
parent | 7e563bfb8a5104ff0eed0fff8d13cbe63a25d17c (diff) |
hw/mips/jazz: Fix implicit creation of "-drive if=scsi" devices
The global hack for creating SCSI devices has recently been removed,
but this apparently broke SCSI devices on some boards that were not
ready for this change yet. For the pica61 machine you now get:
$ mips64-softmmu/qemu-system-mips64 -M pica61 -cdrom x.iso
qemu-system-mips64: -cdrom x.iso: machine type does not support if=scsi,bus=0,unit=2
Fix it by calling scsi_bus_legacy_handle_cmdline() after creating the
corresponding SCSI controller.
Fixes: 1454509726719e0933c800fad00d6999752688ea
Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <1520414644-11535-1-git-send-email-thuth@redhat.com>
Reviewed-by: Hervé Poussineau <hpoussin@reactos.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'hw/mips')
-rw-r--r-- | hw/mips/mips_jazz.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/hw/mips/mips_jazz.c b/hw/mips/mips_jazz.c index 08e6f620fc..e135385265 100644 --- a/hw/mips/mips_jazz.c +++ b/hw/mips/mips_jazz.c @@ -146,6 +146,7 @@ static void mips_jazz_init(MachineState *machine, MemoryRegion *ram = g_new(MemoryRegion, 1); MemoryRegion *bios = g_new(MemoryRegion, 1); MemoryRegion *bios2 = g_new(MemoryRegion, 1); + ESPState *esp; /* init CPUs */ cpu = MIPS_CPU(cpu_create(machine->cpu_type)); @@ -277,9 +278,9 @@ static void mips_jazz_init(MachineState *machine, } /* SCSI adapter */ - esp_init(0x80002000, 0, - rc4030_dma_read, rc4030_dma_write, dmas[0], - qdev_get_gpio_in(rc4030, 5), &esp_reset, &dma_enable); + esp = esp_init(0x80002000, 0, rc4030_dma_read, rc4030_dma_write, dmas[0], + qdev_get_gpio_in(rc4030, 5), &esp_reset, &dma_enable); + scsi_bus_legacy_handle_cmdline(&esp->bus); /* Floppy */ for (n = 0; n < MAX_FD; n++) { |