diff options
author | Markus Armbruster | 2020-06-22 11:42:16 +0200 |
---|---|---|
committer | Markus Armbruster | 2020-06-23 16:07:07 +0200 |
commit | fed2c1731c3dfdcf2d69a3ba73da01a80950bcfd (patch) | |
tree | f3f263675124c76d430544a05737badeff2b81a4 /hw/i386/pc.c | |
parent | fdc: Reject clash between -drive if=floppy and -global isa-fdc (diff) | |
download | qemu-fed2c1731c3dfdcf2d69a3ba73da01a80950bcfd.tar.gz qemu-fed2c1731c3dfdcf2d69a3ba73da01a80950bcfd.tar.xz qemu-fed2c1731c3dfdcf2d69a3ba73da01a80950bcfd.zip |
fdc: Open-code fdctrl_init_isa()
Helper function fdctrl_init_isa() is less than helpful: one of three
places creating "isa-fdc" devices use it. Open-code it there, and
drop the function.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200622094227.1271650-6-armbru@redhat.com>
Diffstat (limited to 'hw/i386/pc.c')
-rw-r--r-- | hw/i386/pc.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/hw/i386/pc.c b/hw/i386/pc.c index d103b8c0ab..f670bcd6e6 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -1142,7 +1142,7 @@ static void pc_superio_init(ISABus *isa_bus, bool create_fdctrl, bool no_vmport) int i; DriveInfo *fd[MAX_FD]; qemu_irq *a20_line; - ISADevice *i8042, *port92, *vmmouse; + ISADevice *fdc, *i8042, *port92, *vmmouse; serial_hds_isa_init(isa_bus, 0, MAX_ISA_SERIAL_PORTS); parallel_hds_isa_init(isa_bus, MAX_PARALLEL_PORTS); @@ -1152,7 +1152,11 @@ static void pc_superio_init(ISABus *isa_bus, bool create_fdctrl, bool no_vmport) create_fdctrl |= !!fd[i]; } if (create_fdctrl) { - fdctrl_init_isa(isa_bus, fd); + fdc = isa_new(TYPE_ISA_FDC); + if (fdc) { + isa_realize_and_unref(fdc, isa_bus, &error_fatal); + isa_fdc_init_drives(fdc, fd); + } } i8042 = isa_create_simple(isa_bus, "i8042"); |