aboutsummaryrefslogtreecommitdiff
path: root/hw/sh4
diff options
context:
space:
mode:
authorThomas Huth <thuth@redhat.com>2024-10-11 15:19:33 +0200
committerThomas Huth <thuth@redhat.com>2024-10-21 16:40:11 +0200
commit68ad89b75ad2bb5f38abea815a50ec17a142565a (patch)
tree4d24d0bdcc384d91ebcc515bbc23a8680a128292 /hw/sh4
parent9ca8239aad94c1da9c8a2423a7c983cf5febfd32 (diff)
downloadqemu-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.c2
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);