Needed by sparc machine init. Move to separate source file so we can keep it in core qemu when building floppy as module.
Signed-off-by: Gerd Hoffmann <kra...@redhat.com> --- hw/block/fdc-module.c | 16 ++++++++++++++++ hw/block/fdc-sysbus.c | 16 ---------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/hw/block/fdc-module.c b/hw/block/fdc-module.c index 11e6ae7c0cb9..3682b5c1ebd1 100644 --- a/hw/block/fdc-module.c +++ b/hw/block/fdc-module.c @@ -54,6 +54,22 @@ void fdctrl_init_sysbus(qemu_irq irq, int dma_chann, fdctrl_init_drives(&sys->state.bus, fds); } +void sun4m_fdctrl_init(qemu_irq irq, hwaddr io_base, + DriveInfo **fds, qemu_irq *fdc_tc) +{ + DeviceState *dev; + FDCtrlSysBus *sys; + + dev = qdev_new("sun-fdtwo"); + sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); + sys = SYSBUS_FDC(dev); + sysbus_connect_irq(SYS_BUS_DEVICE(sys), 0, irq); + sysbus_mmio_map(SYS_BUS_DEVICE(sys), 0, io_base); + *fdc_tc = qdev_get_gpio_in(dev, 0); + + fdctrl_init_drives(&sys->state.bus, fds); +} + void fdctrl_init_drives(FloppyBus *bus, DriveInfo **fds) { DeviceState *dev; diff --git a/hw/block/fdc-sysbus.c b/hw/block/fdc-sysbus.c index 5a8d393d31c2..b358b6467ef5 100644 --- a/hw/block/fdc-sysbus.c +++ b/hw/block/fdc-sysbus.c @@ -80,22 +80,6 @@ static void fdctrl_handle_tc(void *opaque, int irq, int level) trace_fdctrl_tc_pulse(level); } -void sun4m_fdctrl_init(qemu_irq irq, hwaddr io_base, - DriveInfo **fds, qemu_irq *fdc_tc) -{ - DeviceState *dev; - FDCtrlSysBus *sys; - - dev = qdev_new("sun-fdtwo"); - sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); - sys = SYSBUS_FDC(dev); - sysbus_connect_irq(SYS_BUS_DEVICE(sys), 0, irq); - sysbus_mmio_map(SYS_BUS_DEVICE(sys), 0, io_base); - *fdc_tc = qdev_get_gpio_in(dev, 0); - - fdctrl_init_drives(&sys->state.bus, fds); -} - static void sysbus_fdc_common_instance_init(Object *obj) { DeviceState *dev = DEVICE(obj); -- 2.31.1