On 4/28/21 9:57 AM, Mark Cave-Ayland wrote: > On 15/04/2021 11:23, Philippe Mathieu-Daudé wrote: > >> Hi, >> >> The floppy disc controllers pulls in irrelevant devices (sysbus in >> an ISA-only machine, ISA bus + isa devices on a sysbus-only machine). >> >> This series clean that by extracting each device in its own file, >> adding the corresponding Kconfig symbols: FDC_ISA and FDC_SYSBUS. >> >> Regards, >> >> Phil. >> >> Philippe Mathieu-Daudé (4): >> hw/block/fdc: Replace disabled fprintf() by trace event >> hw/block/fdc: Declare shared prototypes in fdc-internal.h >> hw/block/fdc: Extract ISA floppy controllers to fdc-isa.c >> hw/block/fdc: Extract SysBus floppy controllers to fdc-sysbus.c >> >> hw/block/fdc-internal.h | 155 ++++++++++ >> hw/block/fdc-isa.c | 313 +++++++++++++++++++++ >> hw/block/fdc-sysbus.c | 252 +++++++++++++++++ >> hw/block/fdc.c | 608 +--------------------------------------- >> MAINTAINERS | 3 + >> hw/block/Kconfig | 8 + >> hw/block/meson.build | 2 + >> hw/block/trace-events | 3 + >> hw/i386/Kconfig | 2 +- >> hw/isa/Kconfig | 6 +- >> hw/mips/Kconfig | 2 +- >> hw/sparc/Kconfig | 2 +- >> hw/sparc64/Kconfig | 2 +- >> 13 files changed, 751 insertions(+), 607 deletions(-) >> create mode 100644 hw/block/fdc-internal.h >> create mode 100644 hw/block/fdc-isa.c >> create mode 100644 hw/block/fdc-sysbus.c > > This basically looks good to me. You may be able to simplify this > further by removing the global legacy init functions > fdctrl_init_sysbus() and sun4m_fdctrl_init(): from what I can see > fdctrl_init_sysbus() is only used in hw/mips/jazz.c and > sun4m_fdctrl_init() is only used in hw/sparc/sun4m.c so you might as > well inline them or move the functions to the relevant files.
But both use FDCtrlSysBus which this series makes local to hw/block/fdc-sysbus.c, and use fdctrl_init_drives() which is declared in hw/block/fdc-internal.h, and use FloppyBus (also declared there). Apparently they do that to initialize the fdctrl->dma_chann field... Which should be a property, but FDCtrl isn't QOM... So not that easy, it requires more work. > Acked-by: Mark Cave-Ayland <mark.cave-ayl...@ilande.co.uk> Thanks! Phil.