]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: capabilities: Introduce QEMU_CAPS_BUS_FLOPPY
authorPeter Krempa <pkrempa@redhat.com>
Thu, 22 May 2025 18:43:10 +0000 (20:43 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 26 May 2025 13:48:06 +0000 (15:48 +0200)
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>
22 files changed:
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
tests/qemucapabilitiesdata/caps_10.0.0_ppc64.xml
tests/qemucapabilitiesdata/caps_10.0.0_x86_64+amdsev.xml
tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml
tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml
tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml
tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml
tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml
tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml
tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml
tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml
tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml
tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml
tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml
tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml
tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml
tests/qemucapabilitiesdata/caps_9.0.0_sparc.xml
tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml
tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml
tests/qemucapabilitiesdata/caps_9.2.0_x86_64+amdsev.xml
tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml

index 19716497d8a5dc8a5250525a9be5058e31cce66b..39cf23ebe7a8b0dc30f1e7dfceca361b353c6fbf 100644 (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
index df33212a348adc2f5a931b837a7bc0ced4a7dbbe..814ad222aec9edbba8e8c2f8fbc6946318dd3a69 100644 (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;
index 1afe4ff7f3caeb9a9fb30b5cecc30f7e663fdb0b..967b5e0cbc55680320e4895aecd9fc2c4b43557a 100644 (file)
   <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>
index 00afc61a5b6f586e75c0756358c9376c9fd3d481..8da17978fbe4e2743511c773cce4c64cd3215bb2 100644 (file)
   <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>
index cee4cc32527f6518e0dba831cae31b39b0c40d65..09332805f2681a3a9d97bcfba65e75bdc98bebfb 100644 (file)
   <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>
index f61d2263c7386c7b7cc33269079e6adc703f1086..bbd4e7972a842a434d791054447273162333c92f 100644 (file)
   <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>
index e780850c8d26fb4a270e7884a571857752b981cf..e638778ae4f1bf894203a7cab3854ea729dfa118 100644 (file)
   <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>
index d78c239372a2cff57c4a7ae1757e319d451883b6..5a277432ad9b6354dd4a0a7d55693a52bbf90708 100644 (file)
   <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>
index f8fab98961eab2aae1fb238924c9a3044858ceaf..74f2d2772e69738c330d36fc6c410d3b7922ae79 100644 (file)
   <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>
index d6edb65e96759e8b06f9d344f52e0c35673b23d9..5ad6f203951f37f2b256870ab3a0e82cbba40d0d 100644 (file)
   <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>
index 17c662421dfd314ac076d8e38019ce3e9e01ade1..750f9920921eab675f9a45a42fbacf8a4f8b7fe6 100644 (file)
   <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>
index fe318e0a52bbbafacf1b05f9ae18c573d7a00b41..8166b37514c13aa65b73c614a4b4f218ac1b8c7f 100644 (file)
   <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>
index 0dd9d60be3d0f01786c1759af071f0e637c54dda..942484e85cd6f83ac26f298ea603ff18e1a753fc 100644 (file)
   <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>
index 1f526ebc543db5997842e7acf45f6d4f982ed03a..a40383c637f3dd79056451e5f18ad4d94bad1c82 100644 (file)
   <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>
index 44ff63d236fd15b5723f2141395add4c93dc543f..7a7e567f35e55b9637438966a9bad6d854a606b9 100644 (file)
   <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>
index eee166b1eaac7a327de30f4bb88e650ec12a15c0..b9c3952c480ee415c77d8c715006b0ebccc10737 100644 (file)
   <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>
index 3f8fa926c8cafca76273d44800087c378c531373..669c9a23048f899eb6d4049c160a1b79b0f6953e 100644 (file)
   <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>
index 38835ba0cbd4ac85806c95dc96ede2732b721863..11507557d39b08efd81cc5bc11c2ecd19381d43c 100644 (file)
@@ -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>
index 7824fd3f5eb6c9902704088417a46d425fda379c..b7bd10271a4b099b711c62e22d7c26926ecb41ee 100644 (file)
   <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>
index f2207ee5e37b73b43e00acc1ab36379ba81730e6..aed9ba65646df2f2383f2cb2af51127bcfa496de 100644 (file)
   <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>
index 7f6316941b0ea57dbaac6d7d05a716371fba61e5..96426a28a753fc5d5150e28c0edf6256d9eaf2e4 100644 (file)
   <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>
index 12d1928bb76291c6fbef0de5efb41769f53022b6..adb9202ff2e327394f08a0e4b089a1ee13fc6627 100644 (file)
   <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>