qemu: capabilities: Introduce QEMU_CAPS_BUS_FLOPPY

Introduce a common capability for support of floppy devices by qemu.

Floppy support can be compiled out ('FDC', 'FDC_ISA', 'FDC_SYSBUS' qemu
Kconfig options) and also isn't supported by all architectures. Add a
capability that will check for 'isa-fdc' and 'sysbus-fdc' devices and
signal that given qemu supports the floppy bus.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Peter Krempa
2025-05-26 15:48:06 +02:00
parent 600065cefc
commit f7d1caa81d
22 changed files with 24 additions and 0 deletions
+3
View File
@@ -733,6 +733,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
/* 475 */
"virtio-scsi.iothread-mapping", /* QEMU_CAPS_VIRTIO_SCSI_IOTHREAD_MAPPING */
"machine.virt.highmem-mmio-size", /* QEMU_CAPS_MACHINE_VIRT_HIGHMEM_MMIO_SIZE */
"bus-floppy", /* QEMU_CAPS_BUS_FLOPPY */
);
@@ -1386,6 +1387,8 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = {
{ "pvscsi", QEMU_CAPS_SCSI_PVSCSI },
{ "spapr-tpm-proxy", QEMU_CAPS_DEVICE_SPAPR_TPM_PROXY },
{ "vmport", QEMU_CAPS_MACHINE_VMPORT_OPT },
{ "isa-fdc", QEMU_CAPS_BUS_FLOPPY },
{ "sysbus-fdc", QEMU_CAPS_BUS_FLOPPY },
/*
* We don't probe 'esp' directly, because it is often reported
* as present for all QEMU binaries, due to it being enabled
+1
View File
@@ -714,6 +714,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
/* 475 */
QEMU_CAPS_VIRTIO_SCSI_IOTHREAD_MAPPING, /* virtio-scsi supports per-virtqueue iothread mapping */
QEMU_CAPS_MACHINE_VIRT_HIGHMEM_MMIO_SIZE, /* -machine virt,highmem-mmio-size=<size> */
QEMU_CAPS_BUS_FLOPPY, /* floppy bus supported (isa-fdc/sysbus-fdc) */
QEMU_CAPS_LAST /* this must always be the last item */
} virQEMUCapsFlags;
@@ -168,6 +168,7 @@
<flag name='blockdev-set-active'/>
<flag name='shim'/>
<flag name='virtio-scsi.iothread-mapping'/>
<flag name='bus-floppy'/>
<version>10000000</version>
<microcodeVersion>42900285</microcodeVersion>
<package>v10.0.0</package>
@@ -205,6 +205,7 @@
<flag name='blockdev-set-active'/>
<flag name='shim'/>
<flag name='virtio-scsi.iothread-mapping'/>
<flag name='bus-floppy'/>
<version>10000000</version>
<microcodeVersion>43100285</microcodeVersion>
<package>v10.0.0</package>
@@ -204,6 +204,7 @@
<flag name='blockdev-set-active'/>
<flag name='shim'/>
<flag name='virtio-scsi.iothread-mapping'/>
<flag name='bus-floppy'/>
<version>10000000</version>
<microcodeVersion>43100285</microcodeVersion>
<package>v10.0.0</package>
@@ -130,6 +130,7 @@
<flag name='display-reload'/>
<flag name='usb-mtp'/>
<flag name='netdev.user'/>
<flag name='bus-floppy'/>
<version>6002000</version>
<microcodeVersion>42900244</microcodeVersion>
<package>v6.2.0</package>
@@ -172,6 +172,7 @@
<flag name='display-reload'/>
<flag name='usb-mtp'/>
<flag name='netdev.user'/>
<flag name='bus-floppy'/>
<version>6002000</version>
<microcodeVersion>43100244</microcodeVersion>
<package>v6.2.0</package>
@@ -149,6 +149,7 @@
<flag name='usb-mtp'/>
<flag name='netdev.user'/>
<flag name='acpi-erst'/>
<flag name='bus-floppy'/>
<version>7000000</version>
<microcodeVersion>42900243</microcodeVersion>
<package>v7.0.0</package>
@@ -180,6 +180,7 @@
<flag name='netdev.user'/>
<flag name='acpi-erst'/>
<flag name='machine-i8042-opt'/>
<flag name='bus-floppy'/>
<version>7000000</version>
<microcodeVersion>43100243</microcodeVersion>
<package>v7.0.0</package>
@@ -150,6 +150,7 @@
<flag name='usb-mtp'/>
<flag name='netdev.user'/>
<flag name='acpi-erst'/>
<flag name='bus-floppy'/>
<version>7001000</version>
<microcodeVersion>42900244</microcodeVersion>
<package>v7.1.0</package>
@@ -185,6 +185,7 @@
<flag name='acpi-erst'/>
<flag name='intel-iommu.dma-translation'/>
<flag name='machine-i8042-opt'/>
<flag name='bus-floppy'/>
<version>7001000</version>
<microcodeVersion>43100244</microcodeVersion>
<package>v7.1.0</package>
@@ -145,6 +145,7 @@
<flag name='usb-mtp'/>
<flag name='netdev.user'/>
<flag name='acpi-erst'/>
<flag name='bus-floppy'/>
<version>7002000</version>
<microcodeVersion>0</microcodeVersion>
<package>qemu-7.2.0-6.fc37</package>
@@ -189,6 +189,7 @@
<flag name='acpi-erst'/>
<flag name='intel-iommu.dma-translation'/>
<flag name='machine-i8042-opt'/>
<flag name='bus-floppy'/>
<version>7002000</version>
<microcodeVersion>43100245</microcodeVersion>
<package>v7.2.0</package>
@@ -189,6 +189,7 @@
<flag name='acpi-erst'/>
<flag name='intel-iommu.dma-translation'/>
<flag name='machine-i8042-opt'/>
<flag name='bus-floppy'/>
<version>7002000</version>
<microcodeVersion>43100245</microcodeVersion>
<package>v7.2.0</package>
@@ -193,6 +193,7 @@
<flag name='acpi-erst'/>
<flag name='intel-iommu.dma-translation'/>
<flag name='machine-i8042-opt'/>
<flag name='bus-floppy'/>
<version>8000000</version>
<microcodeVersion>43100244</microcodeVersion>
<package>v8.0.0</package>
@@ -195,6 +195,7 @@
<flag name='acpi-erst'/>
<flag name='intel-iommu.dma-translation'/>
<flag name='machine-i8042-opt'/>
<flag name='bus-floppy'/>
<version>8001000</version>
<microcodeVersion>43100245</microcodeVersion>
<package>v8.1.0</package>
@@ -198,6 +198,7 @@
<flag name='acpi-erst'/>
<flag name='intel-iommu.dma-translation'/>
<flag name='machine-i8042-opt'/>
<flag name='bus-floppy'/>
<version>8002000</version>
<microcodeVersion>43100246</microcodeVersion>
<package>v8.2.0</package>
@@ -70,6 +70,7 @@
<flag name='blockjob.backing-mask-protocol'/>
<flag name='display-reload'/>
<flag name='netdev.user'/>
<flag name='bus-floppy'/>
<version>9000000</version>
<microcodeVersion>0</microcodeVersion>
<package>qemu-9.0.0-1.fc40</package>
@@ -200,6 +200,7 @@
<flag name='acpi-erst'/>
<flag name='intel-iommu.dma-translation'/>
<flag name='machine-i8042-opt'/>
<flag name='bus-floppy'/>
<version>9000000</version>
<microcodeVersion>43100245</microcodeVersion>
<package>v9.0.0</package>
@@ -199,6 +199,7 @@
<flag name='intel-iommu.dma-translation'/>
<flag name='machine-i8042-opt'/>
<flag name='migrate-incoming.exit-on-error'/>
<flag name='bus-floppy'/>
<version>9001000</version>
<microcodeVersion>43100246</microcodeVersion>
<package>v9.1.0</package>
@@ -203,6 +203,7 @@
<flag name='chardev-reconnect-miliseconds'/>
<flag name='netdev-stream-reconnect-miliseconds'/>
<flag name='migrate-incoming.exit-on-error'/>
<flag name='bus-floppy'/>
<version>9002000</version>
<microcodeVersion>43100247</microcodeVersion>
<package>v9.2.0</package>
@@ -201,6 +201,7 @@
<flag name='chardev-reconnect-miliseconds'/>
<flag name='netdev-stream-reconnect-miliseconds'/>
<flag name='migrate-incoming.exit-on-error'/>
<flag name='bus-floppy'/>
<version>9002000</version>
<microcodeVersion>43100247</microcodeVersion>
<package>v9.2.0</package>