On 4/27/21 7:34 PM, John Snow wrote: > On 4/15/21 6:23 AM, Philippe Mathieu-Daudé wrote: >> Some machines use floppy controllers via the SysBus interface, >> and don't need to pull in all the SysBus code. >> Extract the SysBus specific code to a new unit: fdc-sysbus.c, >> and add a new Kconfig symbol: "FDC_SYSBUS". >> >> Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> > > LGTM, but again you'll want someone to review the Kconfig changes. It > looks reasonable to me at a glance, but I just don't know what I don't > know there. > > I'm trusting you somewhat that you've audited the proper dependencies > for each subsystem and that these have been accurately described via > Kconfig -- my knowledge of non-x86 platforms is a bit meager, so I am > relying on CI to tell me if this breaks anything I care about.
The way I test these Kconfig changes is configuring with --without-default-devices, and build/test for each machine doing: $ echo $MACHINE=y > default-configs/devices/$arch-softmmu.mak (I overwrite because currently we don't support having a base config different than the default-configs one). For example for the SPARCbook machine: $ echo CONFIG_SUN4M=y > default-configs/devices/sparc-softmmu.mak $ ninja qemu-system-sparc $ qemu-system-sparc -M SPARCbook -S Or for the Jazz machine: $ echo CONFIG_JAZZ=y > default-configs/devices/mips64el-softmmu.mak $ echo CONFIG_SEMIHOSTING=y >> default-configs/devices/mips64el-softmmu.mak $ ninja qemu-system-mips64el $ ./qemu-system-mips64el -M pica61 -S (The CONFIG_SEMIHOSTING is a particular kludge pending another series) But unfortunately there are predating bugs breaking this testing. I'll add this information in the respin's cover. > Would love to get an ACK from Mark Cave-Ayland and Hervé Poussineau if > possible, but if they're not available to take a quick peek, we'll try > to get this in closer to the beginning of the dev window to maximize > problem-finding time. The sun4m maintainer is Artyom. > Reviewed-by: John Snow <js...@redhat.com> Thanks! > >> --- >> hw/block/fdc-sysbus.c | 252 ++++++++++++++++++++++++++++++++++++++++++ >> hw/block/fdc.c | 220 ------------------------------------ >> MAINTAINERS | 1 + >> hw/block/Kconfig | 4 + >> hw/block/meson.build | 1 + >> hw/block/trace-events | 2 + >> hw/mips/Kconfig | 2 +- >> hw/sparc/Kconfig | 2 +- >> 8 files changed, 262 insertions(+), 222 deletions(-) >> create mode 100644 hw/block/fdc-sysbus.c