diff options
author | Thomas Huth <thuth@redhat.com> | 2024-10-11 15:19:33 +0200 |
---|---|---|
committer | Thomas Huth <thuth@redhat.com> | 2024-10-21 16:40:11 +0200 |
commit | 68ad89b75ad2bb5f38abea815a50ec17a142565a (patch) | |
tree | 4d24d0bdcc384d91ebcc515bbc23a8680a128292 /hw/sh4 | |
parent | 9ca8239aad94c1da9c8a2423a7c983cf5febfd32 (diff) | |
download | qemu-68ad89b75ad2bb5f38abea815a50ec17a142565a.zip qemu-68ad89b75ad2bb5f38abea815a50ec17a142565a.tar.gz qemu-68ad89b75ad2bb5f38abea815a50ec17a142565a.tar.bz2 |
Revert "hw/sh4/r2d: Realize IDE controller before accessing it"
This reverts commit 3c5f86a22686ef475a8259c0d8ee714f61c770c9.
Changing the order here caused a regression with the "tuxrun"
kernels (from https://storage.tuxboot.com/20230331/) - ATA commands
fail with a "ata1: lost interrupt (Status 0x58)" message.
Apparently we need to wire the interrupt here first before
realizing the device, so revert the change to the original
behavior.
Reported-by: Guenter Roeck <linux@roeck-us.net>
Acked-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20241011131937.377223-17-thuth@redhat.com>
Diffstat (limited to 'hw/sh4')
-rw-r--r-- | hw/sh4/r2d.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/sh4/r2d.c b/hw/sh4/r2d.c index e5ac675..7eecd79 100644 --- a/hw/sh4/r2d.c +++ b/hw/sh4/r2d.c @@ -286,9 +286,9 @@ static void r2d_init(MachineState *machine) dinfo = drive_get(IF_IDE, 0, 0); dev = qdev_new("mmio-ide"); busdev = SYS_BUS_DEVICE(dev); + sysbus_connect_irq(busdev, 0, irq[CF_IDE]); qdev_prop_set_uint32(dev, "shift", 1); sysbus_realize_and_unref(busdev, &error_fatal); - sysbus_connect_irq(busdev, 0, irq[CF_IDE]); sysbus_mmio_map(busdev, 0, 0x14001000); sysbus_mmio_map(busdev, 1, 0x1400080c); mmio_ide_init_drives(dev, dinfo, NULL); |