[PATCH 1/3] qemu_capabilities: Introduce QEMU_CAPS_DEVICE_USB_BOT

Akihiko Odaki posted 3 patches 4 days, 6 hours ago
[PATCH 1/3] qemu_capabilities: Introduce QEMU_CAPS_DEVICE_USB_BOT
Posted by Akihiko Odaki 4 days, 6 hours ago
usb-bot is supported by all supported QEMU versions; it is present since
1.4.0 and libvirt supports 4.2.0 or later.

Add a capability just in case USB_STORAGE_BOT is disabled when building
QEMU.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
---
 src/qemu/qemu_capabilities.c                       |  8 +++
 src/qemu/qemu_capabilities.h                       |  1 +
 .../qemucapabilitiesdata/caps_10.0.0_s390x.replies | 57 +++++++++-------
 tests/qemucapabilitiesdata/caps_10.0.0_s390x.xml   |  1 +
 .../caps_10.0.0_x86_64.replies                     | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml  |  1 +
 .../caps_5.2.0_aarch64.replies                     | 69 +++++++++++--------
 tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml  |  1 +
 .../qemucapabilitiesdata/caps_5.2.0_ppc64.replies  | 53 +++++++++------
 tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml    |  1 +
 .../caps_5.2.0_riscv64.replies                     | 49 +++++++++-----
 tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml  |  1 +
 .../qemucapabilitiesdata/caps_5.2.0_x86_64.replies | 73 +++++++++++---------
 tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml   |  1 +
 .../caps_6.0.0_aarch64.replies                     | 69 +++++++++++--------
 tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml  |  1 +
 .../qemucapabilitiesdata/caps_6.0.0_x86_64.replies | 73 +++++++++++---------
 tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml   |  1 +
 .../qemucapabilitiesdata/caps_6.1.0_x86_64.replies | 73 +++++++++++---------
 tests/qemucapabilitiesdata/caps_6.1.0_x86_64.xml   |  1 +
 .../caps_6.2.0_aarch64.replies                     | 69 +++++++++++--------
 tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml  |  1 +
 .../qemucapabilitiesdata/caps_6.2.0_ppc64.replies  | 53 +++++++++------
 tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml    |  1 +
 .../qemucapabilitiesdata/caps_6.2.0_x86_64.replies | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml   |  1 +
 .../caps_7.0.0_aarch64+hvf.replies                 | 69 +++++++++++--------
 .../caps_7.0.0_aarch64+hvf.xml                     |  1 +
 .../caps_7.0.0_aarch64.replies                     | 69 +++++++++++--------
 tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml  |  1 +
 .../qemucapabilitiesdata/caps_7.0.0_ppc64.replies  | 53 +++++++++------
 tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml    |  1 +
 .../qemucapabilitiesdata/caps_7.0.0_x86_64.replies | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml   |  1 +
 .../qemucapabilitiesdata/caps_7.1.0_ppc64.replies  | 53 +++++++++------
 tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml    |  1 +
 .../qemucapabilitiesdata/caps_7.1.0_x86_64.replies | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml   |  1 +
 tests/qemucapabilitiesdata/caps_7.2.0_ppc.replies  | 49 +++++++++-----
 tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml      |  1 +
 .../caps_7.2.0_x86_64+hvf.replies                  | 77 +++++++++++++---------
 .../qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml |  1 +
 .../qemucapabilitiesdata/caps_7.2.0_x86_64.replies | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml   |  1 +
 .../caps_8.0.0_riscv64.replies                     | 49 +++++++++-----
 tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml  |  1 +
 .../qemucapabilitiesdata/caps_8.0.0_x86_64.replies | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml   |  1 +
 .../qemucapabilitiesdata/caps_8.1.0_s390x.replies  | 53 +++++++++------
 tests/qemucapabilitiesdata/caps_8.1.0_s390x.xml    |  1 +
 .../qemucapabilitiesdata/caps_8.1.0_x86_64.replies | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml   |  1 +
 .../caps_8.2.0_aarch64.replies                     | 69 +++++++++++--------
 tests/qemucapabilitiesdata/caps_8.2.0_aarch64.xml  |  1 +
 .../qemucapabilitiesdata/caps_8.2.0_armv7l.replies | 69 +++++++++++--------
 tests/qemucapabilitiesdata/caps_8.2.0_armv7l.xml   |  1 +
 .../caps_8.2.0_loongarch64.replies                 | 57 +++++++++-------
 .../caps_8.2.0_loongarch64.xml                     |  1 +
 .../qemucapabilitiesdata/caps_8.2.0_s390x.replies  | 53 +++++++++------
 tests/qemucapabilitiesdata/caps_8.2.0_s390x.xml    |  1 +
 .../qemucapabilitiesdata/caps_8.2.0_x86_64.replies | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml   |  1 +
 .../qemucapabilitiesdata/caps_9.0.0_x86_64.replies | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml   |  1 +
 .../caps_9.1.0_riscv64.replies                     | 57 +++++++++-------
 tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml  |  1 +
 .../qemucapabilitiesdata/caps_9.1.0_s390x.replies  | 57 +++++++++-------
 tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml    |  1 +
 .../qemucapabilitiesdata/caps_9.1.0_x86_64.replies | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml   |  1 +
 .../qemucapabilitiesdata/caps_9.2.0_s390x.replies  | 57 +++++++++-------
 tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml    |  1 +
 .../qemucapabilitiesdata/caps_9.2.0_x86_64.replies | 77 +++++++++++++---------
 tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml   |  1 +
 74 files changed, 1467 insertions(+), 954 deletions(-)

diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index 23b466c36ef1e75199804cf26277956f5e8408a9..2c7f9cfe994c45dd3bbecc9cd9fff51889adfb0f 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -728,6 +728,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
               "machine.virt.aia", /* QEMU_CAPS_MACHINE_VIRT_AIA */
               "virtio-mem-ccw", /* QEMU_CAPS_DEVICE_VIRTIO_MEM_CCW */
               "blockdev-set-active", /* QEMU_CAPS_BLOCKDEV_SET_ACTIVE */
+              "usb-bot", /* QEMU_CAPS_DEVICE_USB_BOT */
     );
 
 
@@ -1418,6 +1419,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = {
     { "sev-snp-guest", QEMU_CAPS_SEV_SNP_GUEST },
     { "acpi-erst", QEMU_CAPS_DEVICE_ACPI_ERST },
     { "virtio-mem-ccw", QEMU_CAPS_DEVICE_VIRTIO_MEM_CCW },
+    { "usb-bot", QEMU_CAPS_DEVICE_USB_BOT },
 };
 
 
@@ -1562,6 +1564,9 @@ static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsVirtioBlkCCW[] =
     { "loadparm", QEMU_CAPS_VIRTIO_CCW_DEVICE_LOADPARM, NULL },
 };
 
+static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsUSBBot[] = {
+};
+
 /* see documentation for virQEMUQAPISchemaPathGet for the query format */
 static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] = {
     { "blockdev-add/arg-type/+file/drop-cache", QEMU_CAPS_MIGRATION_FILE_DROP_CACHE },
@@ -1725,6 +1730,9 @@ static virQEMUCapsDeviceTypeProps virQEMUCapsDeviceProps[] = {
     { "virtio-blk-ccw", virQEMUCapsDevicePropsVirtioBlkCCW,
       G_N_ELEMENTS(virQEMUCapsDevicePropsVirtioBlkCCW),
       QEMU_CAPS_VIRTIO_CCW },
+    { "usb-bot", virQEMUCapsDevicePropsUSBBot,
+      G_N_ELEMENTS(virQEMUCapsDevicePropsUSBBot),
+      QEMU_CAPS_DEVICE_USB_BOT },
 };
 
 static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendFile[] = {
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
index ee71331a09d817108631bb3226b9668004b64ada..a2e5b3f9d663e8d781d42c4d09dced9d6d7a4cdd 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
@@ -707,6 +707,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
     QEMU_CAPS_MACHINE_VIRT_AIA, /* -machine virt,aia=(none|aplic|aplic-imsic), RISC-V only */
     QEMU_CAPS_DEVICE_VIRTIO_MEM_CCW, /* -device virtio-mem-ccw */
     QEMU_CAPS_BLOCKDEV_SET_ACTIVE, /* blockdev-set-active QMP command supported */
+    QEMU_CAPS_DEVICE_USB_BOT, /* -device usb-bot */
 
     QEMU_CAPS_LAST /* this must always be the last item */
 } virQEMUCapsFlags;
diff --git a/tests/qemucapabilitiesdata/caps_10.0.0_s390x.replies b/tests/qemucapabilitiesdata/caps_10.0.0_s390x.replies
index 5195489878401470eb8990d5f1fe390d0feb8805..4efd689e3d2ca3db97431bf04cb8be433178c293 100644
--- a/tests/qemucapabilitiesdata/caps_10.0.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_10.0.0_s390x.replies
@@ -30068,12 +30068,25 @@
   "id": "libvirt-31"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-32"
+}
+
+{
+  "return": [],
+  "id": "libvirt-32"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -30163,7 +30176,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -30171,7 +30184,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -30250,12 +30263,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -30530,7 +30543,7 @@
       "default-ram-id": "s390.ram"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -30538,7 +30551,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -30653,12 +30666,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -31368,32 +31381,32 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "return": [],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "return": [],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -32646,12 +32659,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -32745,7 +32758,7 @@
       "capability": "mapped-ram"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -32756,7 +32769,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -32828,7 +32841,7 @@
       }
     }
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -32839,7 +32852,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -32995,7 +33008,7 @@
       }
     }
   },
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_10.0.0_s390x.xml b/tests/qemucapabilitiesdata/caps_10.0.0_s390x.xml
index bccce19bfc1495328dc87bafcca2470c1d96951a..f5ac4b811a5497453803c40f8bb937e0c8bc9405 100644
--- a/tests/qemucapabilitiesdata/caps_10.0.0_s390x.xml
+++ b/tests/qemucapabilitiesdata/caps_10.0.0_s390x.xml
@@ -142,6 +142,7 @@
   <flag name='query-cpu-model-expansion.deprecated-props'/>
   <flag name='migrate-incoming.exit-on-error'/>
   <flag name='virtio-mem-ccw'/>
+  <flag name='usb-bot'/>
   <version>9002050</version>
   <microcodeVersion>39100285</microcodeVersion>
   <package>v9.2.0-1203-gd6430c17d7</package>
diff --git a/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.replies
index 4ac65390b424f2ac999da6b7f2738f3b6aca9113..5f6b39b7e01a1c82ba92953673a5dc8a0d0c44ec 100644
--- a/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.replies
@@ -31931,12 +31931,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -32030,7 +32043,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -32038,7 +32051,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -32117,7 +32130,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -32125,7 +32138,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -34271,12 +34284,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -34932,7 +34945,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -34940,7 +34953,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -35059,7 +35072,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -35067,7 +35080,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -35274,12 +35287,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -37863,12 +37876,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -37876,12 +37889,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -37889,12 +37902,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -39417,12 +39430,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -39516,16 +39529,16 @@
       "capability": "mapped-ram"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -39534,11 +39547,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "Could not open '/dev/sgx_vepc': No such file or directory"
@@ -39553,7 +39566,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -39954,7 +39967,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -39968,7 +39981,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -40369,7 +40382,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -40384,7 +40397,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -40896,7 +40909,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml
index 358e06b803d44bf8589166272f3dfebef34c96b4..10bea8bf3031b83e6a0fed2c55c5ee021c4d3692 100644
--- a/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml
@@ -212,6 +212,7 @@
   <flag name='netdev-stream-reconnect-miliseconds'/>
   <flag name='migrate-incoming.exit-on-error'/>
   <flag name='blockdev-set-active'/>
+  <flag name='usb-bot'/>
   <version>9002050</version>
   <microcodeVersion>43100285</microcodeVersion>
   <package>v9.2.0-1967-gb69801dd6b</package>
diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.replies b/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.replies
index 2c07f6a0f859dbf68f31a416deb1ece6e0409340..8859a4bb0f4ba3eb6fb61d681f5ecd0414e7d488 100644
--- a/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.replies
+++ b/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.replies
@@ -20817,12 +20817,25 @@
   "id": "libvirt-30"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-31"
+}
+
+{
+  "return": [],
+  "id": "libvirt-31"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -20892,7 +20905,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -20900,7 +20913,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -20969,7 +20982,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -20977,7 +20990,7 @@
   "arguments": {
     "typename": "max-arm-cpu"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -21186,12 +21199,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -21928,7 +21941,7 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -21936,7 +21949,7 @@
   "arguments": {
     "typename": "virt-5.2-machine"
   },
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -22099,7 +22112,7 @@
       "type": "child<cfi.pflash01>"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -22107,7 +22120,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -22192,12 +22205,12 @@
       "type": "string"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -22431,24 +22444,24 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -22456,12 +22469,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -23629,12 +23642,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -23712,12 +23725,12 @@
       "capability": "validate-uuid"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-gic-capabilities",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -23733,7 +23746,7 @@
       "kernel": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -23744,7 +23757,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -23776,7 +23789,7 @@
       }
     }
   },
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -23791,7 +23804,7 @@
       }
     }
   },
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -23823,7 +23836,7 @@
       }
     }
   },
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml
index ae426c5f7f7bf62a2b94bf4bc58ca4f6f5489091..753460b91de2e11514923b8a7d5ce6e8eb79fce2 100644
--- a/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml
+++ b/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml
@@ -127,6 +127,7 @@
   <flag name='usb-mtp'/>
   <flag name='machine.virt.ras'/>
   <flag name='netdev.user'/>
+  <flag name='usb-bot'/>
   <version>5002000</version>
   <microcodeVersion>61700243</microcodeVersion>
   <package>v5.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.replies b/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.replies
index 04db65df5a9e1e86cfc535008cec6057a5ade615..c61131cd1d1285196334cb6bec28d4ff0533f2e2 100644
--- a/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.replies
+++ b/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.replies
@@ -20569,12 +20569,25 @@
   "id": "libvirt-31"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-32"
+}
+
+{
+  "return": [],
+  "id": "libvirt-32"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -20644,7 +20657,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -20652,7 +20665,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -20721,12 +20734,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -21046,7 +21059,7 @@
       "default-ram-id": "mpc8544ds.ram"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -21054,7 +21067,7 @@
   "arguments": {
     "typename": "pseries-5.2-machine"
   },
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -21258,7 +21271,7 @@
       "type": "string"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -21266,7 +21279,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -21351,12 +21364,12 @@
       "type": "string"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -24002,24 +24015,24 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "return": [
     "tpm-spapr"
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -24027,12 +24040,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -25179,12 +25192,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -25262,7 +25275,7 @@
       "capability": "validate-uuid"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml b/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml
index d7615208b306a9458c0658f086124f1c0dbe54f7..f3124b48932a30e32d8a7ce5d30c522620e46c64 100644
--- a/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml
+++ b/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml
@@ -127,6 +127,7 @@
   <flag name='virtio-crypto'/>
   <flag name='usb-mtp'/>
   <flag name='netdev.user'/>
+  <flag name='usb-bot'/>
   <version>5002000</version>
   <microcodeVersion>42900243</microcodeVersion>
   <package>v5.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.replies b/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.replies
index fa4f2ded89c62d5b6518a20e7c112c366144a979..c30e64364c74b59fababe08c0424a6406ec69a57 100644
--- a/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.replies
+++ b/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.replies
@@ -18741,12 +18741,25 @@
   "id": "libvirt-30"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-31"
+}
+
+{
+  "return": [],
+  "id": "libvirt-31"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -18816,7 +18829,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -18824,7 +18837,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -18893,12 +18906,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -18952,7 +18965,7 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -18960,7 +18973,7 @@
   "arguments": {
     "typename": "virt-machine"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -19050,7 +19063,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -19058,7 +19071,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -19143,32 +19156,32 @@
       "type": "string"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "return": [],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "return": [],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -20444,12 +20457,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -20527,5 +20540,5 @@
       "capability": "validate-uuid"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml b/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml
index c3452815b4f0f8b62dd827e32e1b2b427f901f3d..2d2fa54f6b41c91eb9f5d246fb954bfb8618b0dc 100644
--- a/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml
+++ b/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml
@@ -119,6 +119,7 @@
   <flag name='virtio-crypto'/>
   <flag name='usb-mtp'/>
   <flag name='netdev.user'/>
+  <flag name='usb-bot'/>
   <version>5002000</version>
   <microcodeVersion>0</microcodeVersion>
   <package>v5.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.replies
index 3f5405d83e828433cdfb9904b40763c52d6cbdb3..6b43caf403e0056c358bccfbc6099bbdb2716bd4 100644
--- a/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.replies
@@ -20589,12 +20589,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -20664,7 +20677,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -20672,7 +20685,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -20741,7 +20754,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -20749,7 +20762,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -22347,12 +22360,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -22810,7 +22823,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -22818,7 +22831,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -22903,7 +22916,7 @@
       "type": "string"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -22911,7 +22924,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -23036,12 +23049,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -24822,12 +24835,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -24835,12 +24848,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -24848,12 +24861,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -26137,12 +26150,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -26220,16 +26233,16 @@
       "capability": "validate-uuid"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV is not enabled in KVM"
@@ -26244,7 +26257,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
@@ -26553,7 +26566,7 @@
       }
     }
   },
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
@@ -26567,7 +26580,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -26876,7 +26889,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -26891,7 +26904,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -27200,7 +27213,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml
index 4cd05fa7ec9114950db418faa85f05d225accd4f..2da3ee42c1c5597a3856244a52d80d6129793959 100644
--- a/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml
@@ -161,6 +161,7 @@
   <flag name='virtio-crypto'/>
   <flag name='usb-mtp'/>
   <flag name='netdev.user'/>
+  <flag name='usb-bot'/>
   <version>5002000</version>
   <microcodeVersion>43100243</microcodeVersion>
   <package>v5.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.replies b/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.replies
index 097662dc6fda146a10118ce2a09f56204f929857..c882c27c289d07a92ac6fa903b366ac855391c99 100644
--- a/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.replies
+++ b/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.replies
@@ -22669,12 +22669,25 @@
   "id": "libvirt-30"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-31"
+}
+
+{
+  "return": [],
+  "id": "libvirt-31"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -22744,7 +22757,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -22752,7 +22765,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -22821,7 +22834,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -22829,7 +22842,7 @@
   "arguments": {
     "typename": "max-arm-cpu"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -23038,12 +23051,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -23822,7 +23835,7 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -23830,7 +23843,7 @@
   "arguments": {
     "typename": "virt-6.0-machine"
   },
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -24016,7 +24029,7 @@
       "type": "child<cfi.pflash01>"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -24024,7 +24037,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -24122,12 +24135,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -24367,24 +24380,24 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -24392,12 +24405,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -25585,12 +25598,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -25672,12 +25685,12 @@
       "capability": "background-snapshot"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-gic-capabilities",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -25693,7 +25706,7 @@
       "kernel": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -25704,7 +25717,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -25736,7 +25749,7 @@
       }
     }
   },
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -25751,7 +25764,7 @@
       }
     }
   },
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -25783,7 +25796,7 @@
       }
     }
   },
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml
index a02018a467ff298cf95186b9a115e416f399918c..3559e545514e45cb917ae163667669dc36aab231 100644
--- a/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml
+++ b/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml
@@ -139,6 +139,7 @@
   <flag name='machine.virt.ras'/>
   <flag name='netdev.user'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>6000000</version>
   <microcodeVersion>61700242</microcodeVersion>
   <package>v6.0.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.replies
index 5380b322d28761f5f786db8759af61c47b9cd35d..a4715eab67d8a00b7c2bd73500c3af53149570f8 100644
--- a/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.replies
@@ -22363,12 +22363,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -22442,7 +22455,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -22450,7 +22463,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -22519,7 +22532,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -22527,7 +22540,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -24173,12 +24186,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -24625,7 +24638,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -24633,7 +24646,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -24731,7 +24744,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -24739,7 +24752,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -24884,12 +24897,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -26713,12 +26726,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -26726,12 +26739,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -26739,12 +26752,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -28052,12 +28065,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -28139,12 +28152,12 @@
       "capability": "background-snapshot"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
@@ -28154,7 +28167,7 @@
     "cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA",
     "pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA"
   },
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
@@ -28165,7 +28178,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
@@ -28486,7 +28499,7 @@
       }
     }
   },
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
@@ -28500,7 +28513,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -28821,7 +28834,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -28836,7 +28849,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -29157,7 +29170,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml
index a8897fb80b88d4deae16189a9f0ff6f0134b2eb2..7f060769234e895042cb75af39100cb810bdc2fa 100644
--- a/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml
@@ -174,6 +174,7 @@
   <flag name='usb-mtp'/>
   <flag name='netdev.user'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>6000000</version>
   <microcodeVersion>43100242</microcodeVersion>
   <package>v6.0.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.replies
index 6fb37d63d54bcd05e3a8f061dbfbbb219d9e8c2f..d9dac1d32fb1a326556578f13780fea515543d9e 100644
--- a/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.replies
@@ -22592,12 +22592,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -22676,7 +22689,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -22684,7 +22697,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -22758,7 +22771,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -22766,7 +22779,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -24424,12 +24437,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -24894,7 +24907,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -24902,7 +24915,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -25005,7 +25018,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -25013,7 +25026,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -25172,12 +25185,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -27189,12 +27202,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -27202,12 +27215,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -27215,12 +27228,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -28540,12 +28553,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -28627,16 +28640,16 @@
       "capability": "background-snapshot"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "Failed to open /dev/sev: No such file or directory"
@@ -28651,7 +28664,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
@@ -28974,7 +28987,7 @@
       }
     }
   },
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
@@ -28988,7 +29001,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -29311,7 +29324,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -29326,7 +29339,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -29649,7 +29662,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.xml
index 0f2995a2d30b2a6fb0298ab169d31630f9c5f99f..c755d6ac8ad0a0064b5b1f1ab3d2bd517909088e 100644
--- a/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.xml
@@ -180,6 +180,7 @@
   <flag name='usb-mtp'/>
   <flag name='netdev.user'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>6001000</version>
   <microcodeVersion>43100243</microcodeVersion>
   <package>v6.1.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.replies b/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.replies
index e2e26b29327fc75dabf78c62fe1f3dbf5946ac12..ae738f342fbc559b452bd4de165f5e0c1dadd27a 100644
--- a/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.replies
+++ b/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.replies
@@ -23507,12 +23507,25 @@
   "id": "libvirt-31"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-32"
+}
+
+{
+  "return": [],
+  "id": "libvirt-32"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -23587,7 +23600,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -23595,7 +23608,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -23669,7 +23682,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -23677,7 +23690,7 @@
   "arguments": {
     "typename": "max-arm-cpu"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -23886,12 +23899,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -24735,7 +24748,7 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -24743,7 +24756,7 @@
   "arguments": {
     "typename": "virt-6.2-machine"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -24939,7 +24952,7 @@
       "type": "child<cfi.pflash01>"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -24947,7 +24960,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -25050,12 +25063,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -25301,24 +25314,24 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -25326,12 +25339,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -26668,12 +26681,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -26755,12 +26768,12 @@
       "capability": "background-snapshot"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-gic-capabilities",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -26776,7 +26789,7 @@
       "kernel": false
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -26787,7 +26800,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -26819,7 +26832,7 @@
       }
     }
   },
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -26834,7 +26847,7 @@
       }
     }
   },
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -26866,7 +26879,7 @@
       }
     }
   },
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml
index 5624ad95a1bf609d274bd720fd019cfc1aad87b2..ee2520863eb4236146ad2dda0929c9b4374a08bb 100644
--- a/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml
+++ b/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml
@@ -152,6 +152,7 @@
   <flag name='machine.virt.ras'/>
   <flag name='netdev.user'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>6001050</version>
   <microcodeVersion>61700244</microcodeVersion>
   <package></package>
diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.replies b/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.replies
index ceced46e4b611110797c8110a8118b4c90e6455c..20429d676be36c182618965ce0363c4cfac36e13 100644
--- a/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.replies
+++ b/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.replies
@@ -25425,12 +25425,25 @@
   "id": "libvirt-31"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-32"
+}
+
+{
+  "return": [],
+  "id": "libvirt-32"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -25505,7 +25518,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -25513,7 +25526,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -25587,12 +25600,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -25955,7 +25968,7 @@
       "default-ram-id": "mpc8544ds.ram"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -25963,7 +25976,7 @@
   "arguments": {
     "typename": "pseries-6.2-machine"
   },
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -26195,7 +26208,7 @@
       "type": "string"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -26203,7 +26216,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -26306,12 +26319,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -28963,24 +28976,24 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "return": [
     "tpm-spapr"
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -28988,12 +29001,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -30116,12 +30129,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -30203,7 +30216,7 @@
       "capability": "background-snapshot"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml b/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml
index d4172c31467b13cd1f840648fcafa8fd5b86b53e..fa36e1a46b4e9973fd3699379f59a3699a2b3671 100644
--- a/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml
+++ b/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml
@@ -140,6 +140,7 @@
   <flag name='usb-mtp'/>
   <flag name='netdev.user'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>6002000</version>
   <microcodeVersion>42900244</microcodeVersion>
   <package>v6.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.replies
index b2b6bcdf0d9dd423b9e3b8b91dc94a20f179a52e..3e692f6ae1063b64962dbd5b6f561510e0cb7c57 100644
--- a/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.replies
@@ -25740,12 +25740,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -25824,7 +25837,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -25832,7 +25845,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -25906,7 +25919,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -25914,7 +25927,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -27654,12 +27667,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -28142,7 +28155,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -28150,7 +28163,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -28253,7 +28266,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -28261,7 +28274,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -28425,12 +28438,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -30454,12 +30467,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -30467,12 +30480,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -30480,12 +30493,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -31805,12 +31818,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -31892,16 +31905,16 @@
       "capability": "background-snapshot"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -31910,11 +31923,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "SGX is not enabled in KVM"
@@ -31929,7 +31942,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -32262,7 +32275,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -32276,7 +32289,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -32609,7 +32622,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -32624,7 +32637,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -32957,7 +32970,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml
index 582b0e9b5245ae6c91342eb948ac854973f7d061..d46495114615cb88bc22a90e20a3b8368f77f874 100644
--- a/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml
@@ -182,6 +182,7 @@
   <flag name='usb-mtp'/>
   <flag name='netdev.user'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>6002000</version>
   <microcodeVersion>43100244</microcodeVersion>
   <package>v6.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.replies b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.replies
index 4948ac03d82699b1887a04afe0caafd46e9a6ed4..5f2374722800bad1ff6b08ea94377d1360b14032 100644
--- a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.replies
+++ b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.replies
@@ -27197,12 +27197,25 @@
   "id": "libvirt-32"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-33"
+}
+
+{
+  "return": [],
+  "id": "libvirt-33"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -27277,7 +27290,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -27285,7 +27298,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -27359,7 +27372,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -27367,7 +27380,7 @@
   "arguments": {
     "typename": "max-arm-cpu"
   },
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -27576,12 +27589,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -28451,7 +28464,7 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -28459,7 +28472,7 @@
   "arguments": {
     "typename": "virt-7.0-machine"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -28660,7 +28673,7 @@
       "type": "child<cfi.pflash01>"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -28668,7 +28681,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -28771,12 +28784,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -29022,24 +29035,24 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -29047,12 +29060,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -30393,12 +30406,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -30480,12 +30493,12 @@
       "capability": "background-snapshot"
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-gic-capabilities",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -30501,7 +30514,7 @@
       "kernel": false
     }
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -30512,7 +30525,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -30545,7 +30558,7 @@
       }
     }
   },
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -30560,7 +30573,7 @@
       }
     }
   },
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -30593,7 +30606,7 @@
       }
     }
   },
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml
index 8bdb26e8a48f8735ad5d184bb814d3dd82f68b8e..243f8fcd44385a503fc286b5290a9bf37bc5a113 100644
--- a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml
+++ b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml
@@ -161,6 +161,7 @@
   <flag name='netdev.user'/>
   <flag name='acpi-erst'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>6002092</version>
   <microcodeVersion>61700243</microcodeVersion>
   <package>v7.0.0-rc2</package>
diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.replies b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.replies
index 17055d94a4cda668e1bcc560ae8b0e981f0c248c..aefbbc0daeb32f31a2f03a108b09546b1dabbf5f 100644
--- a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.replies
+++ b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.replies
@@ -27197,12 +27197,25 @@
   "id": "libvirt-32"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-33"
+}
+
+{
+  "return": [],
+  "id": "libvirt-33"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -27277,7 +27290,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -27285,7 +27298,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -27359,7 +27372,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -27367,7 +27380,7 @@
   "arguments": {
     "typename": "max-arm-cpu"
   },
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -27576,12 +27589,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -28451,7 +28464,7 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -28459,7 +28472,7 @@
   "arguments": {
     "typename": "virt-7.0-machine"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -28660,7 +28673,7 @@
       "type": "child<cfi.pflash01>"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -28668,7 +28681,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -28771,12 +28784,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -29022,24 +29035,24 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -29047,12 +29060,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -30393,12 +30406,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -30480,12 +30493,12 @@
       "capability": "background-snapshot"
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-gic-capabilities",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -30501,7 +30514,7 @@
       "kernel": false
     }
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -30512,7 +30525,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -30545,7 +30558,7 @@
       }
     }
   },
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -30560,7 +30573,7 @@
       }
     }
   },
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -30593,7 +30606,7 @@
       }
     }
   },
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml
index 697c1c255a783e1649cfdee61136b2542a713c50..e9357948ce78b955c2f8335dab00ee149faeff1e 100644
--- a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml
+++ b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml
@@ -161,6 +161,7 @@
   <flag name='netdev.user'/>
   <flag name='acpi-erst'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>6002092</version>
   <microcodeVersion>61700243</microcodeVersion>
   <package>v7.0.0-rc2</package>
diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.replies b/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.replies
index 0183997cafa7dcf173b8a11ff6cc89ecf3b3f205..f60e965148a0b967de05cca64f5dfb0e0bc7ebdf 100644
--- a/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.replies
+++ b/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.replies
@@ -26130,12 +26130,25 @@
   "id": "libvirt-32"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-33"
+}
+
+{
+  "return": [],
+  "id": "libvirt-33"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -26214,7 +26227,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -26222,7 +26235,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -26296,12 +26309,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -26673,7 +26686,7 @@
       "default-ram-id": "ppc_spapr.ram"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -26681,7 +26694,7 @@
   "arguments": {
     "typename": "pseries-7.0-machine"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -26913,7 +26926,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -26921,7 +26934,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -27024,12 +27037,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -29555,24 +29568,24 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "return": [
     "tpm-spapr"
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -29580,12 +29593,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -30772,12 +30785,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -30859,7 +30872,7 @@
       "capability": "background-snapshot"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml b/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml
index e02f42c5e0e53153f94df132a6d97c4e0da4888d..2cc543379c8a03df3b3c50239c0206071fbd9fa4 100644
--- a/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml
+++ b/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml
@@ -159,6 +159,7 @@
   <flag name='netdev.user'/>
   <flag name='acpi-erst'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>7000000</version>
   <microcodeVersion>42900243</microcodeVersion>
   <package>v7.0.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.replies
index 1ad960c99b968e733595ef74a4623fe29d77aaa7..ee3b9bc1e8623044bdbd533af514bbb44c117e0e 100644
--- a/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.replies
@@ -26276,12 +26276,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -26360,7 +26373,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -26368,7 +26381,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -26442,7 +26455,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -26450,7 +26463,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -28206,12 +28219,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -28712,7 +28725,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -28720,7 +28733,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -28823,7 +28836,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -28831,7 +28844,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -29008,12 +29021,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -31073,12 +31086,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -31086,12 +31099,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -31099,12 +31112,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -32428,12 +32441,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -32515,16 +32528,16 @@
       "capability": "background-snapshot"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -32533,7 +32546,7 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
@@ -32554,7 +32567,7 @@
       }
     ]
   },
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
@@ -32565,7 +32578,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -32902,7 +32915,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -32916,7 +32929,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -33253,7 +33266,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -33268,7 +33281,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -33605,7 +33618,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml
index fd317a9afa5946094ffc9ab19c6a38dc81774885..ecd229c49ca3ef0cd3f125b1fa3e46a697a5b3b4 100644
--- a/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml
@@ -190,6 +190,7 @@
   <flag name='acpi-erst'/>
   <flag name='machine-i8042-opt'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>7000000</version>
   <microcodeVersion>43100243</microcodeVersion>
   <package>v7.0.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.replies b/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.replies
index 931d1c320687c71a75282822a904390334503cdd..5c21b5e85c6981f630b9918a007ede9db2f7e9fc 100644
--- a/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.replies
+++ b/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.replies
@@ -26820,12 +26820,25 @@
   "id": "libvirt-32"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-33"
+}
+
+{
+  "return": [],
+  "id": "libvirt-33"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -26904,7 +26917,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -26912,7 +26925,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -26986,12 +26999,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -27372,7 +27385,7 @@
       "default-ram-id": "ppc_spapr.ram"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -27380,7 +27393,7 @@
   "arguments": {
     "typename": "pseries-7.1-machine"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -27622,7 +27635,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -27630,7 +27643,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -27743,12 +27756,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -30262,24 +30275,24 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "return": [
     "tpm-spapr"
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -30287,12 +30300,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -31479,12 +31492,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -31574,7 +31587,7 @@
       "capability": "postcopy-preempt"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml b/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml
index 427aa1ace96f2a09f78744a4717a7ba6f7175ea9..fc12e5de3d8052ce3b98f81439e78f8f2603ffed 100644
--- a/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml
+++ b/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml
@@ -160,6 +160,7 @@
   <flag name='netdev.user'/>
   <flag name='acpi-erst'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>7001000</version>
   <microcodeVersion>42900244</microcodeVersion>
   <package>v7.1.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.replies
index cd2116d05a643d06feced427607360b8e9837945..9f578c5e42c040232841e92016bc04b1dd0c30ca 100644
--- a/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.replies
@@ -26999,12 +26999,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -27083,7 +27096,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -27091,7 +27104,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -27165,7 +27178,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -27173,7 +27186,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -28966,12 +28979,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -29490,7 +29503,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -29498,7 +29511,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -29611,7 +29624,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -29619,7 +29632,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -29811,12 +29824,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -31755,12 +31768,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -31768,12 +31781,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -31781,12 +31794,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -33110,12 +33123,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -33205,16 +33218,16 @@
       "capability": "postcopy-preempt"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -33223,11 +33236,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "SGX is not enabled in KVM"
@@ -33242,7 +33255,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -33580,7 +33593,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -33594,7 +33607,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -33932,7 +33945,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -33947,7 +33960,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -34285,7 +34298,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml
index 32e4e8e1bb8bc265998bc68444235869fe5a41d9..70893b9f0dc32037f90745bbc37baa6f670ecbcb 100644
--- a/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml
@@ -195,6 +195,7 @@
   <flag name='intel-iommu.dma-translation'/>
   <flag name='machine-i8042-opt'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>7001000</version>
   <microcodeVersion>43100244</microcodeVersion>
   <package>v7.1.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_ppc.replies b/tests/qemucapabilitiesdata/caps_7.2.0_ppc.replies
index 5cd0d7e87da276b510943ed5a1ac64af989c12b8..36c762608cc4d88e4f53c22aba1030caf307e449 100644
--- a/tests/qemucapabilitiesdata/caps_7.2.0_ppc.replies
+++ b/tests/qemucapabilitiesdata/caps_7.2.0_ppc.replies
@@ -27426,12 +27426,25 @@
   "id": "libvirt-30"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-31"
+}
+
+{
+  "return": [],
+  "id": "libvirt-31"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -27515,7 +27528,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -27523,7 +27536,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -27602,12 +27615,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -27710,7 +27723,7 @@
       "default-ram-id": "mpc8544ds.ram"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -27718,7 +27731,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -27831,12 +27844,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -30146,32 +30159,32 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "return": [],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "return": [],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -31487,12 +31500,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -31582,5 +31595,5 @@
       "capability": "postcopy-preempt"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml b/tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml
index 56cb66d3947a6de98ee21b42d467cf2f10b4ca52..d6e236b6f02f4440b556fbcb08291e99e605fe73 100644
--- a/tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml
+++ b/tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml
@@ -155,6 +155,7 @@
   <flag name='netdev.user'/>
   <flag name='acpi-erst'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>7002000</version>
   <microcodeVersion>0</microcodeVersion>
   <package>qemu-7.2.0-6.fc37</package>
diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.replies b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.replies
index c85be45cd18c06b384bb9b21144f3cea6c14bf56..e4b50cdef1fe1a38ddb8923771b83e6a726cd095 100644
--- a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.replies
+++ b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.replies
@@ -27968,12 +27968,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -28057,7 +28070,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -28065,7 +28078,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -28144,7 +28157,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -28152,7 +28165,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -29945,12 +29958,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -30487,7 +30500,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -30495,7 +30508,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -30608,7 +30621,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -30616,7 +30629,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -30808,12 +30821,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -32752,12 +32765,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -32765,12 +32778,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -32778,12 +32791,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -34107,12 +34120,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -34202,16 +34215,16 @@
       "capability": "postcopy-preempt"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -34220,11 +34233,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "SGX is not enabled in KVM"
@@ -34239,7 +34252,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -34577,7 +34590,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -34591,7 +34604,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -34929,7 +34942,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -34944,7 +34957,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -35282,7 +35295,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml
index 0ebcb94a3189013aebcd09919f0077919e359b87..8b5211cd2c55c1c22517bed71605757baefc3d82 100644
--- a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml
+++ b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml
@@ -199,6 +199,7 @@
   <flag name='intel-iommu.dma-translation'/>
   <flag name='machine-i8042-opt'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>7002000</version>
   <microcodeVersion>43100245</microcodeVersion>
   <package>v7.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.replies
index 4b56adeafa15753f8ba519cacedc4a2c46ff97d6..e0bda325bd50543d80c65d0a512ec9fac9289452 100644
--- a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.replies
@@ -27968,12 +27968,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -28057,7 +28070,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -28065,7 +28078,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -28144,7 +28157,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -28152,7 +28165,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -29945,12 +29958,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -30487,7 +30500,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -30495,7 +30508,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -30608,7 +30621,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -30616,7 +30629,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -30808,12 +30821,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -32752,12 +32765,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -32765,12 +32778,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -32778,12 +32791,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -34107,12 +34120,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -34202,16 +34215,16 @@
       "capability": "postcopy-preempt"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -34220,11 +34233,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "SGX is not enabled in KVM"
@@ -34239,7 +34252,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -34577,7 +34590,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -34591,7 +34604,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -34929,7 +34942,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -34944,7 +34957,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -35282,7 +35295,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml
index 025ced01d9efe91199c1a58c6880d504ca6b169d..053bf864a423ff5b0e3fb56af2a4e5c2a88d6746 100644
--- a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml
@@ -199,6 +199,7 @@
   <flag name='intel-iommu.dma-translation'/>
   <flag name='machine-i8042-opt'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>7002000</version>
   <microcodeVersion>43100245</microcodeVersion>
   <package>v7.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.replies b/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.replies
index 50e1fe583509a69e9dcb3f3e8618de6f9640b568..59250e3751641c78bdf822ad2d53b6fd838b3438 100644
--- a/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.replies
+++ b/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.replies
@@ -25904,12 +25904,25 @@
   "id": "libvirt-28"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-29"
+}
+
+{
+  "return": [],
+  "id": "libvirt-29"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-29"
+  "id": "libvirt-30"
 }
 
 {
@@ -25993,7 +26006,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-29"
+  "id": "libvirt-30"
 }
 
 {
@@ -26001,7 +26014,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-30"
+  "id": "libvirt-31"
 }
 
 {
@@ -26080,12 +26093,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-30"
+  "id": "libvirt-31"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -26160,7 +26173,7 @@
       "default-ram-id": "riscv_virt_board.ram"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -26168,7 +26181,7 @@
   "arguments": {
     "typename": "virt-machine"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -26301,7 +26314,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -26309,7 +26322,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -26422,24 +26435,24 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -26447,12 +26460,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -27814,12 +27827,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -27909,5 +27922,5 @@
       "capability": "postcopy-preempt"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml b/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml
index 0207637ebc8ee228632c07e3e5806f641eba4933..6623669985b6326a9b60a64cca630385c0ea5537 100644
--- a/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml
+++ b/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml
@@ -143,6 +143,7 @@
   <flag name='netdev.user'/>
   <flag name='snapshot-internal-qmp'/>
   <flag name='machine.virt.aia'/>
+  <flag name='usb-bot'/>
   <version>7002050</version>
   <microcodeVersion>0</microcodeVersion>
   <package>v7.2.0-333-g222059a0fc</package>
diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies
index 4cad3763885e05e163ff7424448cb8416df96e31..4e4f9e6db4561b3ecee0b550f1c0b2f71d7584cf 100644
--- a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies
@@ -29339,12 +29339,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -29428,7 +29441,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -29436,7 +29449,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -29515,7 +29528,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -29523,7 +29536,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -31340,12 +31353,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -31961,7 +31974,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -31969,7 +31982,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -32082,7 +32095,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -32090,7 +32103,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -32282,12 +32295,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -34333,12 +34346,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -34346,12 +34359,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -34359,12 +34372,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -35805,12 +35818,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -35900,16 +35913,16 @@
       "capability": "postcopy-preempt"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -35918,11 +35931,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "SGX is not enabled in KVM"
@@ -35937,7 +35950,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -36280,7 +36293,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -36294,7 +36307,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -36637,7 +36650,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -36652,7 +36665,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -37101,7 +37114,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml
index 5f45788b777edc2d9ae31631b4559351b1c3f7bf..aa3d4e2d140e132f06bf9f90b348ebb73aab3e41 100644
--- a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml
@@ -203,6 +203,7 @@
   <flag name='intel-iommu.dma-translation'/>
   <flag name='machine-i8042-opt'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>8000000</version>
   <microcodeVersion>43100244</microcodeVersion>
   <package>v8.0.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies b/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies
index 032c102d4b57b0f1e635e257f456ecb64ad3896a..5630cf71ae152f50024cf13f285bc3ea062e6bca 100644
--- a/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies
@@ -27805,12 +27805,25 @@
   "id": "libvirt-29"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-30"
+}
+
+{
+  "return": [],
+  "id": "libvirt-30"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-30"
+  "id": "libvirt-31"
 }
 
 {
@@ -27895,7 +27908,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-30"
+  "id": "libvirt-31"
 }
 
 {
@@ -27903,7 +27916,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -27982,12 +27995,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -28262,7 +28275,7 @@
       "default-ram-id": "s390.ram"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -28270,7 +28283,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -28383,12 +28396,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -29152,32 +29165,32 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "return": [],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "return": [],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -30400,12 +30413,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -30503,7 +30516,7 @@
       "capability": "dirty-limit"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -30514,7 +30527,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -30563,7 +30576,7 @@
       }
     }
   },
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_8.1.0_s390x.xml b/tests/qemucapabilitiesdata/caps_8.1.0_s390x.xml
index 16a3e3fbe0b93aea605965fabd37b324881b49c7..49002d3caf9ea55c5a5796167bffc09603002d10 100644
--- a/tests/qemucapabilitiesdata/caps_8.1.0_s390x.xml
+++ b/tests/qemucapabilitiesdata/caps_8.1.0_s390x.xml
@@ -123,6 +123,7 @@
   <flag name='usb-mtp'/>
   <flag name='netdev.user'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>8001000</version>
   <microcodeVersion>39100245</microcodeVersion>
   <package>v8.1.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.replies
index 888a5d3b6adab4a1f325aa7b00eefa508a06eb24..4e6c0257e4dd23417dc7235fe4cf61790d7a26a1 100644
--- a/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.replies
@@ -30094,12 +30094,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -30188,7 +30201,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -30196,7 +30209,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -30275,7 +30288,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -30283,7 +30296,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -32180,12 +32193,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -32821,7 +32834,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -32829,7 +32842,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -32942,7 +32955,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -32950,7 +32963,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -33138,12 +33151,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -35525,12 +35538,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -35538,12 +35551,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -35551,12 +35564,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -37014,12 +37027,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -37117,16 +37130,16 @@
       "capability": "dirty-limit"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -37135,11 +37148,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "SGX is not enabled in KVM"
@@ -37154,7 +37167,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -37517,7 +37530,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -37531,7 +37544,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -37894,7 +37907,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -37909,7 +37922,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -38378,7 +38391,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml
index 7dee7f94c2b851fb7f9fcd0e03259cc097474afb..f24cfe70a431a2ffcb9f1a7cc640ad84ce21bec7 100644
--- a/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml
@@ -205,6 +205,7 @@
   <flag name='intel-iommu.dma-translation'/>
   <flag name='machine-i8042-opt'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>8001000</version>
   <microcodeVersion>43100245</microcodeVersion>
   <package>v8.1.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.replies b/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.replies
index 203774ecff413e0f39d8e7751d936d82648dd0f1..247cf11b74dc5ef0a877480bb672faa24f9648a2 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.replies
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.replies
@@ -31154,12 +31154,25 @@
   "id": "libvirt-31"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-32"
+}
+
+{
+  "return": [],
+  "id": "libvirt-32"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -31249,7 +31262,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -31257,7 +31270,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -31336,7 +31349,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -31344,7 +31357,7 @@
   "arguments": {
     "typename": "max-arm-cpu"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -31553,12 +31566,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -32670,7 +32683,7 @@
       "default-ram-id": "ram"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -32678,7 +32691,7 @@
   "arguments": {
     "typename": "virt-8.2-machine"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -32914,7 +32927,7 @@
       "type": "child<cfi.pflash01>"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -32922,7 +32935,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -33035,12 +33048,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -33334,12 +33347,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -33347,12 +33360,12 @@
     "tpm-tis",
     "tpm-tis"
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -33360,12 +33373,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -34730,12 +34743,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -34833,12 +34846,12 @@
       "capability": "dirty-limit"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-gic-capabilities",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -34854,7 +34867,7 @@
       "kernel": false
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -34865,7 +34878,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -34898,7 +34911,7 @@
       }
     }
   },
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -34913,11 +34926,11 @@
       }
     }
   },
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
-  "id": "libvirt-45",
+  "id": "libvirt-46",
   "error": {
     "class": "GenericError",
     "desc": "Parameter 'hv-passthrough' is unexpected"
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.xml
index 78082dbf3f0404902be0226b3ea91ee2f606a6f5..5d2c6ad0034e4633ea84073fc0498fcea8117a5e 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.xml
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.xml
@@ -170,6 +170,7 @@
   <flag name='netdev.user'/>
   <flag name='acpi-erst'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>8002000</version>
   <microcodeVersion>61700246</microcodeVersion>
   <package>v8.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.replies b/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.replies
index b67bb23c1bf9a050bee5d0a401a8da2c06e0a80c..da066ec0892b4ac7beb2fa7f6e8ece62364c0083 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.replies
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.replies
@@ -31388,12 +31388,25 @@
   "id": "libvirt-31"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-32"
+}
+
+{
+  "return": [],
+  "id": "libvirt-32"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -31487,7 +31500,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -31495,7 +31508,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -31574,7 +31587,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -31582,7 +31595,7 @@
   "arguments": {
     "typename": "max-arm-cpu"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -31724,12 +31737,12 @@
       "type": "link<irq>"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -32787,7 +32800,7 @@
       "default-ram-id": "ram"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -32795,7 +32808,7 @@
   "arguments": {
     "typename": "virt-8.2-machine"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -33031,7 +33044,7 @@
       "type": "child<cfi.pflash01>"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -33039,7 +33052,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -33152,12 +33165,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -33379,12 +33392,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -33392,12 +33405,12 @@
     "tpm-tis",
     "tpm-tis"
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -33405,12 +33418,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -34892,12 +34905,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -34995,12 +35008,12 @@
       "capability": "dirty-limit"
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-gic-capabilities",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -35016,7 +35029,7 @@
       "kernel": false
     }
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -35027,11 +35040,11 @@
       "name": "host"
     }
   },
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
-  "id": "libvirt-44",
+  "id": "libvirt-45",
   "error": {
     "class": "GenericError",
     "desc": "The CPU type 'host' requires KVM"
@@ -35050,11 +35063,11 @@
       }
     }
   },
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
-  "id": "libvirt-45",
+  "id": "libvirt-46",
   "error": {
     "class": "GenericError",
     "desc": "The CPU type 'host' requires KVM"
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.xml b/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.xml
index 912eb45db675395f5c1bc9a78ca70ab345ee0caa..41f83f5cd349cd3eebef4b3b30533a17e4569139 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.xml
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.xml
@@ -177,6 +177,7 @@
   <flag name='netdev.user'/>
   <flag name='acpi-erst'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>8002000</version>
   <microcodeVersion>0</microcodeVersion>
   <package>qemu-8.2.0-7.fc39</package>
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.replies b/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.replies
index 346c327e846a07f6863cc24adadfaf0f52aff2a6..d9ab0a2c23be8b8b710d57d80d6f003992a3d211 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.replies
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.replies
@@ -28042,12 +28042,25 @@
   "id": "libvirt-30"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-31"
+}
+
+{
+  "return": [],
+  "id": "libvirt-31"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -28137,7 +28150,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -28145,7 +28158,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -28224,12 +28237,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -28263,7 +28276,7 @@
       "default-ram-id": "ram"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -28271,7 +28284,7 @@
   "arguments": {
     "typename": "virt-machine"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -28403,7 +28416,7 @@
       "type": "str"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -28411,7 +28424,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -28524,12 +28537,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -28553,32 +28566,32 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "return": [],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "return": [],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -29893,12 +29906,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -29996,7 +30009,7 @@
       "capability": "dirty-limit"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -30007,11 +30020,11 @@
       "name": "host"
     }
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
-  "id": "libvirt-41",
+  "id": "libvirt-42",
   "error": {
     "class": "GenericError",
     "desc": "The CPU type 'host' is not a recognized LoongArch CPU type"
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.xml b/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.xml
index 60b980e256e580bebeb1af89f34d84d52133c759..04ea12a28a453a40ee3878cc836e5ef05261012b 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.xml
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.xml
@@ -160,6 +160,7 @@
   <flag name='netdev.user'/>
   <flag name='acpi-erst'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>8002000</version>
   <microcodeVersion>106300246</microcodeVersion>
   <package>v8.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies b/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies
index 222a9fdfdcc6ed5749c99c0bcede49722cdaab44..f7fa980213f9e9fbfe956b268e215f9b6e50e1f9 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies
@@ -28498,12 +28498,25 @@
   "id": "libvirt-29"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-30"
+}
+
+{
+  "return": [],
+  "id": "libvirt-30"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-30"
+  "id": "libvirt-31"
 }
 
 {
@@ -28593,7 +28606,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-30"
+  "id": "libvirt-31"
 }
 
 {
@@ -28601,7 +28614,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -28680,12 +28693,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -28970,7 +28983,7 @@
       "default-ram-id": "s390.ram"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -28978,7 +28991,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -29091,12 +29104,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -29860,32 +29873,32 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "return": [],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "return": [],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -31116,12 +31129,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -31219,7 +31232,7 @@
       "capability": "dirty-limit"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -31230,7 +31243,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -31279,7 +31292,7 @@
       }
     }
   },
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_s390x.xml b/tests/qemucapabilitiesdata/caps_8.2.0_s390x.xml
index 8f3610408031c9165795ab99fd9d33b954da2ae6..5fe7bda1fbf8e62e6181eda5237f1c183950f0c3 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_s390x.xml
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_s390x.xml
@@ -124,6 +124,7 @@
   <flag name='virtio-sound'/>
   <flag name='netdev.user'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>8002000</version>
   <microcodeVersion>39100246</microcodeVersion>
   <package>v8.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies
index 33e4978c3844fb72955f0f78d1c8f61431bc4e6c..0d1ec5aa7ced7a6bdade90c1651c52fab2add7a5 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies
@@ -30785,12 +30785,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -30884,7 +30897,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -30892,7 +30905,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -30971,7 +30984,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -30979,7 +30992,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -32892,12 +32905,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -33513,7 +33526,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -33521,7 +33534,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -33634,7 +33647,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -33642,7 +33655,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -33830,12 +33843,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -36217,12 +36230,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -36230,12 +36243,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -36243,12 +36256,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -37719,12 +37732,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -37822,16 +37835,16 @@
       "capability": "dirty-limit"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -37840,11 +37853,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "SGX is not enabled in KVM"
@@ -37859,7 +37872,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -38226,7 +38239,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -38240,7 +38253,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -38607,7 +38620,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -38622,7 +38635,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -39095,7 +39108,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml
index 51e14736cd118bf73999a23c7e7c0c59b1f4f389..02e8dcc6a0d79470ca90b468b5fd754e075f7506 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml
@@ -208,6 +208,7 @@
   <flag name='intel-iommu.dma-translation'/>
   <flag name='machine-i8042-opt'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>8002000</version>
   <microcodeVersion>43100246</microcodeVersion>
   <package>v8.2.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.replies
index 89fefb863be144ef3334fa8f8c3f7e423ba202a4..bbe061599675a5fe11565124c5c1999ded18d58f 100644
--- a/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.replies
@@ -31003,12 +31003,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -31102,7 +31115,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -31110,7 +31123,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -31189,7 +31202,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -31197,7 +31210,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -33114,12 +33127,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -33755,7 +33768,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -33763,7 +33776,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -33876,7 +33889,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -33884,7 +33897,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -34076,12 +34089,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -36463,12 +36476,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -36476,12 +36489,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -36489,12 +36502,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -37969,12 +37982,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -38076,16 +38089,16 @@
       "capability": "mapped-ram"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -38094,11 +38107,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "SGX is not enabled in KVM"
@@ -38113,7 +38126,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -38481,7 +38494,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -38495,7 +38508,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -38863,7 +38876,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -38878,7 +38891,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -39352,7 +39365,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml
index 4b64547b1153d5de842a84a490394704a63195ec..d3efa5b5ff7e026d5e0fc791572c3db0efa02630 100644
--- a/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml
@@ -210,6 +210,7 @@
   <flag name='intel-iommu.dma-translation'/>
   <flag name='machine-i8042-opt'/>
   <flag name='snapshot-internal-qmp'/>
+  <flag name='usb-bot'/>
   <version>9000000</version>
   <microcodeVersion>43100245</microcodeVersion>
   <package>v9.0.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.replies b/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.replies
index 35b905e5b2398ec5f99d402d8b4c921bcc3724f5..be28dfe141436a54e90b3c9513f3c7486414392a 100644
--- a/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.replies
+++ b/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.replies
@@ -29380,12 +29380,25 @@
   "id": "libvirt-29"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-30"
+}
+
+{
+  "return": [],
+  "id": "libvirt-30"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-30"
+  "id": "libvirt-31"
 }
 
 {
@@ -29479,7 +29492,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-30"
+  "id": "libvirt-31"
 }
 
 {
@@ -29487,7 +29500,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -29566,12 +29579,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -29646,7 +29659,7 @@
       "default-ram-id": "riscv_virt_board.ram"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -29654,7 +29667,7 @@
   "arguments": {
     "typename": "virt-machine"
   },
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -29810,7 +29823,7 @@
       "type": "child<cfi.pflash01>"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -29818,7 +29831,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -29931,12 +29944,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -30020,24 +30033,24 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "return": [
     "tpm-tis"
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -30045,12 +30058,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -31464,12 +31477,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -31563,7 +31576,7 @@
       "capability": "mapped-ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -31574,11 +31587,11 @@
       "name": "host"
     }
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
-  "id": "libvirt-40",
+  "id": "libvirt-41",
   "error": {
     "class": "GenericError",
     "desc": "The requested expansion type is not supported"
diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml b/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml
index ccc7673ba9c9f7f66a07ed43b33085f40c24a50a..438aed84a26185a06dffe42c71fd2efa69b7c54c 100644
--- a/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml
+++ b/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml
@@ -170,6 +170,7 @@
   <flag name='snapshot-internal-qmp'/>
   <flag name='migrate-incoming.exit-on-error'/>
   <flag name='machine.virt.aia'/>
+  <flag name='usb-bot'/>
   <version>9001000</version>
   <microcodeVersion>0</microcodeVersion>
   <package>v9.1.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies
index 0a523ba47eb7015be880f36db3ed990ec1821438..bf97ecb6cbb50924e88dc82ed902ebe46111454b 100644
--- a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies
@@ -29547,12 +29547,25 @@
   "id": "libvirt-30"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-31"
+}
+
+{
+  "return": [],
+  "id": "libvirt-31"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -29642,7 +29655,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -29650,7 +29663,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -29729,12 +29742,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -30039,7 +30052,7 @@
       "default-ram-id": "s390.ram"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -30047,7 +30060,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -30160,12 +30173,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -30803,32 +30816,32 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "return": [],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "return": [],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -32067,12 +32080,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -32166,7 +32179,7 @@
       "capability": "mapped-ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -32177,7 +32190,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -32249,7 +32262,7 @@
       }
     }
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -32260,7 +32273,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -32332,7 +32345,7 @@
       }
     }
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml
index a20b63051efa08d46c4617d569faec8c9a4f6394..eabef7c2b4677a9ec532fd21bc44912fa9dfc126 100644
--- a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml
+++ b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml
@@ -135,6 +135,7 @@
   <flag name='snapshot-internal-qmp'/>
   <flag name='query-cpu-model-expansion.deprecated-props'/>
   <flag name='migrate-incoming.exit-on-error'/>
+  <flag name='usb-bot'/>
   <version>9001000</version>
   <microcodeVersion>39100246</microcodeVersion>
   <package>v9.1.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.replies
index 4838037ee7eacc3674a0bf60ab67e8c91165065d..afe76c8b7a6591c444d2bb51adb6b0c5f7748270 100644
--- a/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.replies
@@ -31390,12 +31390,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -31489,7 +31502,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -31497,7 +31510,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -31576,7 +31589,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -31584,7 +31597,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -33633,12 +33646,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -34254,7 +34267,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -34262,7 +34275,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -34375,7 +34388,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -34383,7 +34396,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -34575,12 +34588,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -37131,12 +37144,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -37144,12 +37157,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -37157,12 +37170,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -38645,12 +38658,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -38744,16 +38757,16 @@
       "capability": "mapped-ram"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -38762,11 +38775,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "Could not open '/dev/sgx_vepc': No such file or directory"
@@ -38781,7 +38794,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -39159,7 +39172,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -39173,7 +39186,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -39551,7 +39564,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -39566,7 +39579,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -40054,7 +40067,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml
index 196bab77973cc4ccbdd39a3893e47c6960ced288..db87bb13537e89becb6242e3816171c54da9bb49 100644
--- a/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml
@@ -209,6 +209,7 @@
   <flag name='machine-i8042-opt'/>
   <flag name='snapshot-internal-qmp'/>
   <flag name='migrate-incoming.exit-on-error'/>
+  <flag name='usb-bot'/>
   <version>9001000</version>
   <microcodeVersion>43100246</microcodeVersion>
   <package>v9.1.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies
index 9a58acaf08045deaeb721ab8e1b4e3b41d5a1a4d..043f6318755e7cc6f7bec62a610bef50fbb28087 100644
--- a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies
@@ -29692,12 +29692,25 @@
   "id": "libvirt-30"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-31"
+}
+
+{
+  "return": [],
+  "id": "libvirt-31"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -29787,7 +29800,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-31"
+  "id": "libvirt-32"
 }
 
 {
@@ -29795,7 +29808,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
@@ -29874,12 +29887,12 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-32"
+  "id": "libvirt-33"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -30194,7 +30207,7 @@
       "default-ram-id": "s390.ram"
     }
   ],
-  "id": "libvirt-33"
+  "id": "libvirt-34"
 }
 
 {
@@ -30202,7 +30215,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
@@ -30315,12 +30328,12 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-34"
+  "id": "libvirt-35"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
@@ -30958,32 +30971,32 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-35"
+  "id": "libvirt-36"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "return": [],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "return": [],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -32226,12 +32239,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -32325,7 +32338,7 @@
       "capability": "mapped-ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -32336,7 +32349,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -32408,7 +32421,7 @@
       }
     }
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -32419,7 +32432,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -32491,7 +32504,7 @@
       }
     }
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml
index 767a95bd3e49cf840dc550178397c27a317370b6..43a00004ea53f355045b93b5af8d07eeb7fded55 100644
--- a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml
+++ b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml
@@ -138,6 +138,7 @@
   <flag name='netdev-stream-reconnect-miliseconds'/>
   <flag name='query-cpu-model-expansion.deprecated-props'/>
   <flag name='migrate-incoming.exit-on-error'/>
+  <flag name='usb-bot'/>
   <version>9001050</version>
   <microcodeVersion>39100247</microcodeVersion>
   <package>v9.1.0-1348-g11b8920ed2</package>
diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.replies
index 6b2ecb40d0102c7a540572c33e17ca464c54b867..dac7ca1f3f2cea2a61fbe5140df6ec8700c37248 100644
--- a/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.replies
@@ -31726,12 +31726,25 @@
   "id": "libvirt-35"
 }
 
+{
+  "execute": "device-list-properties",
+  "arguments": {
+    "typename": "usb-bot"
+  },
+  "id": "libvirt-36"
+}
+
+{
+  "return": [],
+  "id": "libvirt-36"
+}
+
 {
   "execute": "qom-list-properties",
   "arguments": {
     "typename": "memory-backend-file"
   },
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -31825,7 +31838,7 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-36"
+  "id": "libvirt-37"
 }
 
 {
@@ -31833,7 +31846,7 @@
   "arguments": {
     "typename": "memory-backend-memfd"
   },
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -31912,7 +31925,7 @@
       "type": "int"
     }
   ],
-  "id": "libvirt-37"
+  "id": "libvirt-38"
 }
 
 {
@@ -31920,7 +31933,7 @@
   "arguments": {
     "typename": "max-x86_64-cpu"
   },
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
@@ -34062,12 +34075,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-38"
+  "id": "libvirt-39"
 }
 
 {
   "execute": "query-machines",
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -34703,7 +34716,7 @@
       "default-ram-id": "pc.ram"
     }
   ],
-  "id": "libvirt-39"
+  "id": "libvirt-40"
 }
 
 {
@@ -34711,7 +34724,7 @@
   "arguments": {
     "typename": "none-machine"
   },
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -34829,7 +34842,7 @@
       "type": "child<container>"
     }
   ],
-  "id": "libvirt-40"
+  "id": "libvirt-41"
 }
 
 {
@@ -34837,7 +34850,7 @@
   "arguments": {
     "typename": "generic-pc-machine"
   },
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
@@ -35035,12 +35048,12 @@
       "type": "bool"
     }
   ],
-  "id": "libvirt-41"
+  "id": "libvirt-42"
 }
 
 {
   "execute": "query-cpu-definitions",
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
@@ -37483,12 +37496,12 @@
       "deprecated": false
     }
   ],
-  "id": "libvirt-42"
+  "id": "libvirt-43"
 }
 
 {
   "execute": "query-tpm-models",
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
@@ -37496,12 +37509,12 @@
     "tpm-crb",
     "tpm-tis"
   ],
-  "id": "libvirt-43"
+  "id": "libvirt-44"
 }
 
 {
   "execute": "query-tpm-types",
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
@@ -37509,12 +37522,12 @@
     "passthrough",
     "emulator"
   ],
-  "id": "libvirt-44"
+  "id": "libvirt-45"
 }
 
 {
   "execute": "query-command-line-options",
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
@@ -39007,12 +39020,12 @@
       "option": "drive"
     }
   ],
-  "id": "libvirt-45"
+  "id": "libvirt-46"
 }
 
 {
   "execute": "query-migrate-capabilities",
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
@@ -39106,16 +39119,16 @@
       "capability": "mapped-ram"
     }
   ],
-  "id": "libvirt-46"
+  "id": "libvirt-47"
 }
 
 {
   "execute": "query-sev-capabilities",
-  "id": "libvirt-47"
+  "id": "libvirt-48"
 }
 
 {
-  "id": "libvirt-47",
+  "id": "libvirt-48",
   "error": {
     "class": "GenericError",
     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
@@ -39124,11 +39137,11 @@
 
 {
   "execute": "query-sgx-capabilities",
-  "id": "libvirt-48"
+  "id": "libvirt-49"
 }
 
 {
-  "id": "libvirt-48",
+  "id": "libvirt-49",
   "error": {
     "class": "GenericError",
     "desc": "Could not open '/dev/sgx_vepc': No such file or directory"
@@ -39143,7 +39156,7 @@
       "name": "host"
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -39543,7 +39556,7 @@
       }
     }
   },
-  "id": "libvirt-49"
+  "id": "libvirt-50"
 }
 
 {
@@ -39557,7 +39570,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -39957,7 +39970,7 @@
       }
     }
   },
-  "id": "libvirt-50"
+  "id": "libvirt-51"
 }
 
 {
@@ -39972,7 +39985,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
@@ -40483,7 +40496,7 @@
       }
     }
   },
-  "id": "libvirt-51"
+  "id": "libvirt-52"
 }
 
 {
diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml
index 824504dba0905ab4a289f3a132fdd83d4819daea..4bf25e81af051db0b65e5c68588014082b44507d 100644
--- a/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml
@@ -211,6 +211,7 @@
   <flag name='chardev-reconnect-miliseconds'/>
   <flag name='netdev-stream-reconnect-miliseconds'/>
   <flag name='migrate-incoming.exit-on-error'/>
+  <flag name='usb-bot'/>
   <version>9002000</version>
   <microcodeVersion>43100247</microcodeVersion>
   <package>v9.2.0</package>

-- 
2.48.1
Re: [PATCH 1/3] qemu_capabilities: Introduce QEMU_CAPS_DEVICE_USB_BOT
Posted by Ján Tomko 20 hours ago
On a Saturday in 2025, Akihiko Odaki wrote:
>usb-bot is supported by all supported QEMU versions; it is present since
>1.4.0 and libvirt supports 4.2.0 or later.
>
>Add a capability just in case USB_STORAGE_BOT is disabled when building
>QEMU.
>
>Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
>---
> src/qemu/qemu_capabilities.c                       |  8 +++
> src/qemu/qemu_capabilities.h                       |  1 +

[...]

> .../qemucapabilitiesdata/caps_9.2.0_x86_64.replies | 77 +++++++++++++---------
> tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml   |  1 +
> 74 files changed, 1467 insertions(+), 954 deletions(-)
>
>diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
>index 23b466c36ef1e75199804cf26277956f5e8408a9..2c7f9cfe994c45dd3bbecc9cd9fff51889adfb0f 100644
>--- a/src/qemu/qemu_capabilities.c
>+++ b/src/qemu/qemu_capabilities.c
>@@ -728,6 +728,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
>               "machine.virt.aia", /* QEMU_CAPS_MACHINE_VIRT_AIA */
>               "virtio-mem-ccw", /* QEMU_CAPS_DEVICE_VIRTIO_MEM_CCW */
>               "blockdev-set-active", /* QEMU_CAPS_BLOCKDEV_SET_ACTIVE */
>+              "usb-bot", /* QEMU_CAPS_DEVICE_USB_BOT */
>     );
>
>
>@@ -1418,6 +1419,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = {
>     { "sev-snp-guest", QEMU_CAPS_SEV_SNP_GUEST },
>     { "acpi-erst", QEMU_CAPS_DEVICE_ACPI_ERST },
>     { "virtio-mem-ccw", QEMU_CAPS_DEVICE_VIRTIO_MEM_CCW },
>+    { "usb-bot", QEMU_CAPS_DEVICE_USB_BOT },
> };
>
>
>@@ -1562,6 +1564,9 @@ static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsVirtioBlkCCW[] =
>     { "loadparm", QEMU_CAPS_VIRTIO_CCW_DEVICE_LOADPARM, NULL },
> };
>
>+static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsUSBBot[] = {

Since we're not looking for any props of the device, ...

>+};
>+
> /* see documentation for virQEMUQAPISchemaPathGet for the query format */
> static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] = {
>     { "blockdev-add/arg-type/+file/drop-cache", QEMU_CAPS_MIGRATION_FILE_DROP_CACHE },
>@@ -1725,6 +1730,9 @@ static virQEMUCapsDeviceTypeProps virQEMUCapsDeviceProps[] = {
>     { "virtio-blk-ccw", virQEMUCapsDevicePropsVirtioBlkCCW,
>       G_N_ELEMENTS(virQEMUCapsDevicePropsVirtioBlkCCW),
>       QEMU_CAPS_VIRTIO_CCW },
>+    { "usb-bot", virQEMUCapsDevicePropsUSBBot,
>+      G_N_ELEMENTS(virQEMUCapsDevicePropsUSBBot),
>+      QEMU_CAPS_DEVICE_USB_BOT },

... there should be no need to add it here.

> };
>
> static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendFile[] = {
>diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
>index ee71331a09d817108631bb3226b9668004b64ada..a2e5b3f9d663e8d781d42c4d09dced9d6d7a4cdd 100644
>--- a/src/qemu/qemu_capabilities.h
>+++ b/src/qemu/qemu_capabilities.h
>@@ -707,6 +707,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
>     QEMU_CAPS_MACHINE_VIRT_AIA, /* -machine virt,aia=(none|aplic|aplic-imsic), RISC-V only */
>     QEMU_CAPS_DEVICE_VIRTIO_MEM_CCW, /* -device virtio-mem-ccw */
>     QEMU_CAPS_BLOCKDEV_SET_ACTIVE, /* blockdev-set-active QMP command supported */
>+    QEMU_CAPS_DEVICE_USB_BOT, /* -device usb-bot */
>
>     QEMU_CAPS_LAST /* this must always be the last item */
> } virQEMUCapsFlags;
>diff --git a/tests/qemucapabilitiesdata/caps_10.0.0_s390x.replies b/tests/qemucapabilitiesdata/caps_10.0.0_s390x.replies
>index 5195489878401470eb8990d5f1fe390d0feb8805..4efd689e3d2ca3db97431bf04cb8be433178c293 100644
>--- a/tests/qemucapabilitiesdata/caps_10.0.0_s390x.replies
>+++ b/tests/qemucapabilitiesdata/caps_10.0.0_s390x.replies
>@@ -30068,12 +30068,25 @@
>   "id": "libvirt-31"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-32"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-32"

It doesn't even have any after all that time.

Jano

>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -30163,7 +30176,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -30171,7 +30184,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -30250,12 +30263,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -30530,7 +30543,7 @@
>       "default-ram-id": "s390.ram"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -30538,7 +30551,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -30653,12 +30666,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -31368,32 +31381,32 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -32646,12 +32659,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -32745,7 +32758,7 @@
>       "capability": "mapped-ram"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -32756,7 +32769,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -32828,7 +32841,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -32839,7 +32852,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -32995,7 +33008,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_10.0.0_s390x.xml b/tests/qemucapabilitiesdata/caps_10.0.0_s390x.xml
>index bccce19bfc1495328dc87bafcca2470c1d96951a..f5ac4b811a5497453803c40f8bb937e0c8bc9405 100644
>--- a/tests/qemucapabilitiesdata/caps_10.0.0_s390x.xml
>+++ b/tests/qemucapabilitiesdata/caps_10.0.0_s390x.xml
>@@ -142,6 +142,7 @@
>   <flag name='query-cpu-model-expansion.deprecated-props'/>
>   <flag name='migrate-incoming.exit-on-error'/>
>   <flag name='virtio-mem-ccw'/>
>+  <flag name='usb-bot'/>
>   <version>9002050</version>
>   <microcodeVersion>39100285</microcodeVersion>
>   <package>v9.2.0-1203-gd6430c17d7</package>
>diff --git a/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.replies
>index 4ac65390b424f2ac999da6b7f2738f3b6aca9113..5f6b39b7e01a1c82ba92953673a5dc8a0d0c44ec 100644
>--- a/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.replies
>@@ -31931,12 +31931,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -32030,7 +32043,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -32038,7 +32051,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -32117,7 +32130,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -32125,7 +32138,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -34271,12 +34284,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -34932,7 +34945,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -34940,7 +34953,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -35059,7 +35072,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -35067,7 +35080,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -35274,12 +35287,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -37863,12 +37876,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -37876,12 +37889,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -37889,12 +37902,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -39417,12 +39430,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -39516,16 +39529,16 @@
>       "capability": "mapped-ram"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -39534,11 +39547,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "Could not open '/dev/sgx_vepc': No such file or directory"
>@@ -39553,7 +39566,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -39954,7 +39967,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -39968,7 +39981,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -40369,7 +40382,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -40384,7 +40397,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -40896,7 +40909,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml
>index 358e06b803d44bf8589166272f3dfebef34c96b4..10bea8bf3031b83e6a0fed2c55c5ee021c4d3692 100644
>--- a/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml
>@@ -212,6 +212,7 @@
>   <flag name='netdev-stream-reconnect-miliseconds'/>
>   <flag name='migrate-incoming.exit-on-error'/>
>   <flag name='blockdev-set-active'/>
>+  <flag name='usb-bot'/>
>   <version>9002050</version>
>   <microcodeVersion>43100285</microcodeVersion>
>   <package>v9.2.0-1967-gb69801dd6b</package>
>diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.replies b/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.replies
>index 2c07f6a0f859dbf68f31a416deb1ece6e0409340..8859a4bb0f4ba3eb6fb61d681f5ecd0414e7d488 100644
>--- a/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.replies
>+++ b/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.replies
>@@ -20817,12 +20817,25 @@
>   "id": "libvirt-30"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-31"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-31"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -20892,7 +20905,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -20900,7 +20913,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -20969,7 +20982,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -20977,7 +20990,7 @@
>   "arguments": {
>     "typename": "max-arm-cpu"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -21186,12 +21199,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -21928,7 +21941,7 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -21936,7 +21949,7 @@
>   "arguments": {
>     "typename": "virt-5.2-machine"
>   },
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -22099,7 +22112,7 @@
>       "type": "child<cfi.pflash01>"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -22107,7 +22120,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -22192,12 +22205,12 @@
>       "type": "string"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -22431,24 +22444,24 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "return": [
>     "tpm-tis"
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -22456,12 +22469,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -23629,12 +23642,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -23712,12 +23725,12 @@
>       "capability": "validate-uuid"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-gic-capabilities",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -23733,7 +23746,7 @@
>       "kernel": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -23744,7 +23757,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -23776,7 +23789,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -23791,7 +23804,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -23823,7 +23836,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml
>index ae426c5f7f7bf62a2b94bf4bc58ca4f6f5489091..753460b91de2e11514923b8a7d5ce6e8eb79fce2 100644
>--- a/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml
>+++ b/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml
>@@ -127,6 +127,7 @@
>   <flag name='usb-mtp'/>
>   <flag name='machine.virt.ras'/>
>   <flag name='netdev.user'/>
>+  <flag name='usb-bot'/>
>   <version>5002000</version>
>   <microcodeVersion>61700243</microcodeVersion>
>   <package>v5.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.replies b/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.replies
>index 04db65df5a9e1e86cfc535008cec6057a5ade615..c61131cd1d1285196334cb6bec28d4ff0533f2e2 100644
>--- a/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.replies
>+++ b/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.replies
>@@ -20569,12 +20569,25 @@
>   "id": "libvirt-31"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-32"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-32"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -20644,7 +20657,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -20652,7 +20665,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -20721,12 +20734,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -21046,7 +21059,7 @@
>       "default-ram-id": "mpc8544ds.ram"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -21054,7 +21067,7 @@
>   "arguments": {
>     "typename": "pseries-5.2-machine"
>   },
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -21258,7 +21271,7 @@
>       "type": "string"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -21266,7 +21279,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -21351,12 +21364,12 @@
>       "type": "string"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -24002,24 +24015,24 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "return": [
>     "tpm-spapr"
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -24027,12 +24040,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -25179,12 +25192,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -25262,7 +25275,7 @@
>       "capability": "validate-uuid"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml b/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml
>index d7615208b306a9458c0658f086124f1c0dbe54f7..f3124b48932a30e32d8a7ce5d30c522620e46c64 100644
>--- a/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml
>+++ b/tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml
>@@ -127,6 +127,7 @@
>   <flag name='virtio-crypto'/>
>   <flag name='usb-mtp'/>
>   <flag name='netdev.user'/>
>+  <flag name='usb-bot'/>
>   <version>5002000</version>
>   <microcodeVersion>42900243</microcodeVersion>
>   <package>v5.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.replies b/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.replies
>index fa4f2ded89c62d5b6518a20e7c112c366144a979..c30e64364c74b59fababe08c0424a6406ec69a57 100644
>--- a/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.replies
>+++ b/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.replies
>@@ -18741,12 +18741,25 @@
>   "id": "libvirt-30"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-31"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-31"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -18816,7 +18829,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -18824,7 +18837,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -18893,12 +18906,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -18952,7 +18965,7 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -18960,7 +18973,7 @@
>   "arguments": {
>     "typename": "virt-machine"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -19050,7 +19063,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -19058,7 +19071,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -19143,32 +19156,32 @@
>       "type": "string"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -20444,12 +20457,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -20527,5 +20540,5 @@
>       "capability": "validate-uuid"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml b/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml
>index c3452815b4f0f8b62dd827e32e1b2b427f901f3d..2d2fa54f6b41c91eb9f5d246fb954bfb8618b0dc 100644
>--- a/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml
>+++ b/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml
>@@ -119,6 +119,7 @@
>   <flag name='virtio-crypto'/>
>   <flag name='usb-mtp'/>
>   <flag name='netdev.user'/>
>+  <flag name='usb-bot'/>
>   <version>5002000</version>
>   <microcodeVersion>0</microcodeVersion>
>   <package>v5.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.replies
>index 3f5405d83e828433cdfb9904b40763c52d6cbdb3..6b43caf403e0056c358bccfbc6099bbdb2716bd4 100644
>--- a/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.replies
>@@ -20589,12 +20589,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -20664,7 +20677,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -20672,7 +20685,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -20741,7 +20754,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -20749,7 +20762,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -22347,12 +22360,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -22810,7 +22823,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -22818,7 +22831,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -22903,7 +22916,7 @@
>       "type": "string"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -22911,7 +22924,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -23036,12 +23049,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -24822,12 +24835,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -24835,12 +24848,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -24848,12 +24861,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -26137,12 +26150,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -26220,16 +26233,16 @@
>       "capability": "validate-uuid"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV is not enabled in KVM"
>@@ -26244,7 +26257,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>@@ -26553,7 +26566,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>@@ -26567,7 +26580,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -26876,7 +26889,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -26891,7 +26904,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -27200,7 +27213,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml
>index 4cd05fa7ec9114950db418faa85f05d225accd4f..2da3ee42c1c5597a3856244a52d80d6129793959 100644
>--- a/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml
>@@ -161,6 +161,7 @@
>   <flag name='virtio-crypto'/>
>   <flag name='usb-mtp'/>
>   <flag name='netdev.user'/>
>+  <flag name='usb-bot'/>
>   <version>5002000</version>
>   <microcodeVersion>43100243</microcodeVersion>
>   <package>v5.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.replies b/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.replies
>index 097662dc6fda146a10118ce2a09f56204f929857..c882c27c289d07a92ac6fa903b366ac855391c99 100644
>--- a/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.replies
>+++ b/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.replies
>@@ -22669,12 +22669,25 @@
>   "id": "libvirt-30"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-31"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-31"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -22744,7 +22757,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -22752,7 +22765,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -22821,7 +22834,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -22829,7 +22842,7 @@
>   "arguments": {
>     "typename": "max-arm-cpu"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -23038,12 +23051,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -23822,7 +23835,7 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -23830,7 +23843,7 @@
>   "arguments": {
>     "typename": "virt-6.0-machine"
>   },
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -24016,7 +24029,7 @@
>       "type": "child<cfi.pflash01>"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -24024,7 +24037,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -24122,12 +24135,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -24367,24 +24380,24 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "return": [
>     "tpm-tis"
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -24392,12 +24405,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -25585,12 +25598,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -25672,12 +25685,12 @@
>       "capability": "background-snapshot"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-gic-capabilities",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -25693,7 +25706,7 @@
>       "kernel": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -25704,7 +25717,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -25736,7 +25749,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -25751,7 +25764,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -25783,7 +25796,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml
>index a02018a467ff298cf95186b9a115e416f399918c..3559e545514e45cb917ae163667669dc36aab231 100644
>--- a/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml
>+++ b/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml
>@@ -139,6 +139,7 @@
>   <flag name='machine.virt.ras'/>
>   <flag name='netdev.user'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>6000000</version>
>   <microcodeVersion>61700242</microcodeVersion>
>   <package>v6.0.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.replies
>index 5380b322d28761f5f786db8759af61c47b9cd35d..a4715eab67d8a00b7c2bd73500c3af53149570f8 100644
>--- a/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.replies
>@@ -22363,12 +22363,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -22442,7 +22455,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -22450,7 +22463,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -22519,7 +22532,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -22527,7 +22540,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -24173,12 +24186,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -24625,7 +24638,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -24633,7 +24646,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -24731,7 +24744,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -24739,7 +24752,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -24884,12 +24897,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -26713,12 +26726,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -26726,12 +26739,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -26739,12 +26752,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -28052,12 +28065,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -28139,12 +28152,12 @@
>       "capability": "background-snapshot"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>@@ -28154,7 +28167,7 @@
>     "cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA",
>     "pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA"
>   },
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>@@ -28165,7 +28178,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>@@ -28486,7 +28499,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>@@ -28500,7 +28513,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -28821,7 +28834,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -28836,7 +28849,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -29157,7 +29170,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml
>index a8897fb80b88d4deae16189a9f0ff6f0134b2eb2..7f060769234e895042cb75af39100cb810bdc2fa 100644
>--- a/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml
>@@ -174,6 +174,7 @@
>   <flag name='usb-mtp'/>
>   <flag name='netdev.user'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>6000000</version>
>   <microcodeVersion>43100242</microcodeVersion>
>   <package>v6.0.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.replies
>index 6fb37d63d54bcd05e3a8f061dbfbbb219d9e8c2f..d9dac1d32fb1a326556578f13780fea515543d9e 100644
>--- a/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.replies
>@@ -22592,12 +22592,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -22676,7 +22689,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -22684,7 +22697,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -22758,7 +22771,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -22766,7 +22779,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -24424,12 +24437,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -24894,7 +24907,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -24902,7 +24915,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -25005,7 +25018,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -25013,7 +25026,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -25172,12 +25185,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -27189,12 +27202,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -27202,12 +27215,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -27215,12 +27228,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -28540,12 +28553,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -28627,16 +28640,16 @@
>       "capability": "background-snapshot"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "Failed to open /dev/sev: No such file or directory"
>@@ -28651,7 +28664,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>@@ -28974,7 +28987,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>@@ -28988,7 +29001,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -29311,7 +29324,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -29326,7 +29339,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -29649,7 +29662,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.xml
>index 0f2995a2d30b2a6fb0298ab169d31630f9c5f99f..c755d6ac8ad0a0064b5b1f1ab3d2bd517909088e 100644
>--- a/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_6.1.0_x86_64.xml
>@@ -180,6 +180,7 @@
>   <flag name='usb-mtp'/>
>   <flag name='netdev.user'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>6001000</version>
>   <microcodeVersion>43100243</microcodeVersion>
>   <package>v6.1.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.replies b/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.replies
>index e2e26b29327fc75dabf78c62fe1f3dbf5946ac12..ae738f342fbc559b452bd4de165f5e0c1dadd27a 100644
>--- a/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.replies
>+++ b/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.replies
>@@ -23507,12 +23507,25 @@
>   "id": "libvirt-31"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-32"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-32"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -23587,7 +23600,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -23595,7 +23608,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -23669,7 +23682,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -23677,7 +23690,7 @@
>   "arguments": {
>     "typename": "max-arm-cpu"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -23886,12 +23899,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -24735,7 +24748,7 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -24743,7 +24756,7 @@
>   "arguments": {
>     "typename": "virt-6.2-machine"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -24939,7 +24952,7 @@
>       "type": "child<cfi.pflash01>"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -24947,7 +24960,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -25050,12 +25063,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -25301,24 +25314,24 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "return": [
>     "tpm-tis"
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -25326,12 +25339,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -26668,12 +26681,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -26755,12 +26768,12 @@
>       "capability": "background-snapshot"
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-gic-capabilities",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -26776,7 +26789,7 @@
>       "kernel": false
>     }
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -26787,7 +26800,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -26819,7 +26832,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -26834,7 +26847,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -26866,7 +26879,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml
>index 5624ad95a1bf609d274bd720fd019cfc1aad87b2..ee2520863eb4236146ad2dda0929c9b4374a08bb 100644
>--- a/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml
>+++ b/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml
>@@ -152,6 +152,7 @@
>   <flag name='machine.virt.ras'/>
>   <flag name='netdev.user'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>6001050</version>
>   <microcodeVersion>61700244</microcodeVersion>
>   <package></package>
>diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.replies b/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.replies
>index ceced46e4b611110797c8110a8118b4c90e6455c..20429d676be36c182618965ce0363c4cfac36e13 100644
>--- a/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.replies
>+++ b/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.replies
>@@ -25425,12 +25425,25 @@
>   "id": "libvirt-31"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-32"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-32"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -25505,7 +25518,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -25513,7 +25526,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -25587,12 +25600,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -25955,7 +25968,7 @@
>       "default-ram-id": "mpc8544ds.ram"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -25963,7 +25976,7 @@
>   "arguments": {
>     "typename": "pseries-6.2-machine"
>   },
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -26195,7 +26208,7 @@
>       "type": "string"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -26203,7 +26216,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -26306,12 +26319,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -28963,24 +28976,24 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "return": [
>     "tpm-spapr"
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -28988,12 +29001,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -30116,12 +30129,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -30203,7 +30216,7 @@
>       "capability": "background-snapshot"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml b/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml
>index d4172c31467b13cd1f840648fcafa8fd5b86b53e..fa36e1a46b4e9973fd3699379f59a3699a2b3671 100644
>--- a/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml
>+++ b/tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml
>@@ -140,6 +140,7 @@
>   <flag name='usb-mtp'/>
>   <flag name='netdev.user'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>6002000</version>
>   <microcodeVersion>42900244</microcodeVersion>
>   <package>v6.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.replies
>index b2b6bcdf0d9dd423b9e3b8b91dc94a20f179a52e..3e692f6ae1063b64962dbd5b6f561510e0cb7c57 100644
>--- a/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.replies
>@@ -25740,12 +25740,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -25824,7 +25837,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -25832,7 +25845,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -25906,7 +25919,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -25914,7 +25927,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -27654,12 +27667,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -28142,7 +28155,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -28150,7 +28163,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -28253,7 +28266,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -28261,7 +28274,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -28425,12 +28438,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -30454,12 +30467,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -30467,12 +30480,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -30480,12 +30493,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -31805,12 +31818,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -31892,16 +31905,16 @@
>       "capability": "background-snapshot"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -31910,11 +31923,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "SGX is not enabled in KVM"
>@@ -31929,7 +31942,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -32262,7 +32275,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -32276,7 +32289,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -32609,7 +32622,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -32624,7 +32637,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -32957,7 +32970,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml
>index 582b0e9b5245ae6c91342eb948ac854973f7d061..d46495114615cb88bc22a90e20a3b8368f77f874 100644
>--- a/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml
>@@ -182,6 +182,7 @@
>   <flag name='usb-mtp'/>
>   <flag name='netdev.user'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>6002000</version>
>   <microcodeVersion>43100244</microcodeVersion>
>   <package>v6.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.replies b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.replies
>index 4948ac03d82699b1887a04afe0caafd46e9a6ed4..5f2374722800bad1ff6b08ea94377d1360b14032 100644
>--- a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.replies
>+++ b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.replies
>@@ -27197,12 +27197,25 @@
>   "id": "libvirt-32"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-33"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-33"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -27277,7 +27290,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -27285,7 +27298,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -27359,7 +27372,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -27367,7 +27380,7 @@
>   "arguments": {
>     "typename": "max-arm-cpu"
>   },
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -27576,12 +27589,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -28451,7 +28464,7 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -28459,7 +28472,7 @@
>   "arguments": {
>     "typename": "virt-7.0-machine"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -28660,7 +28673,7 @@
>       "type": "child<cfi.pflash01>"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -28668,7 +28681,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -28771,12 +28784,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -29022,24 +29035,24 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "return": [
>     "tpm-tis"
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -29047,12 +29060,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -30393,12 +30406,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -30480,12 +30493,12 @@
>       "capability": "background-snapshot"
>     }
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-gic-capabilities",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -30501,7 +30514,7 @@
>       "kernel": false
>     }
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -30512,7 +30525,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -30545,7 +30558,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -30560,7 +30573,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -30593,7 +30606,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml
>index 8bdb26e8a48f8735ad5d184bb814d3dd82f68b8e..243f8fcd44385a503fc286b5290a9bf37bc5a113 100644
>--- a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml
>+++ b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml
>@@ -161,6 +161,7 @@
>   <flag name='netdev.user'/>
>   <flag name='acpi-erst'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>6002092</version>
>   <microcodeVersion>61700243</microcodeVersion>
>   <package>v7.0.0-rc2</package>
>diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.replies b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.replies
>index 17055d94a4cda668e1bcc560ae8b0e981f0c248c..aefbbc0daeb32f31a2f03a108b09546b1dabbf5f 100644
>--- a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.replies
>+++ b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.replies
>@@ -27197,12 +27197,25 @@
>   "id": "libvirt-32"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-33"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-33"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -27277,7 +27290,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -27285,7 +27298,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -27359,7 +27372,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -27367,7 +27380,7 @@
>   "arguments": {
>     "typename": "max-arm-cpu"
>   },
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -27576,12 +27589,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -28451,7 +28464,7 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -28459,7 +28472,7 @@
>   "arguments": {
>     "typename": "virt-7.0-machine"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -28660,7 +28673,7 @@
>       "type": "child<cfi.pflash01>"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -28668,7 +28681,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -28771,12 +28784,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -29022,24 +29035,24 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "return": [
>     "tpm-tis"
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -29047,12 +29060,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -30393,12 +30406,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -30480,12 +30493,12 @@
>       "capability": "background-snapshot"
>     }
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-gic-capabilities",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -30501,7 +30514,7 @@
>       "kernel": false
>     }
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -30512,7 +30525,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -30545,7 +30558,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -30560,7 +30573,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -30593,7 +30606,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml
>index 697c1c255a783e1649cfdee61136b2542a713c50..e9357948ce78b955c2f8335dab00ee149faeff1e 100644
>--- a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml
>+++ b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml
>@@ -161,6 +161,7 @@
>   <flag name='netdev.user'/>
>   <flag name='acpi-erst'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>6002092</version>
>   <microcodeVersion>61700243</microcodeVersion>
>   <package>v7.0.0-rc2</package>
>diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.replies b/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.replies
>index 0183997cafa7dcf173b8a11ff6cc89ecf3b3f205..f60e965148a0b967de05cca64f5dfb0e0bc7ebdf 100644
>--- a/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.replies
>+++ b/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.replies
>@@ -26130,12 +26130,25 @@
>   "id": "libvirt-32"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-33"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-33"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -26214,7 +26227,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -26222,7 +26235,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -26296,12 +26309,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -26673,7 +26686,7 @@
>       "default-ram-id": "ppc_spapr.ram"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -26681,7 +26694,7 @@
>   "arguments": {
>     "typename": "pseries-7.0-machine"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -26913,7 +26926,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -26921,7 +26934,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -27024,12 +27037,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -29555,24 +29568,24 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "return": [
>     "tpm-spapr"
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -29580,12 +29593,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -30772,12 +30785,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -30859,7 +30872,7 @@
>       "capability": "background-snapshot"
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml b/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml
>index e02f42c5e0e53153f94df132a6d97c4e0da4888d..2cc543379c8a03df3b3c50239c0206071fbd9fa4 100644
>--- a/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml
>+++ b/tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml
>@@ -159,6 +159,7 @@
>   <flag name='netdev.user'/>
>   <flag name='acpi-erst'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>7000000</version>
>   <microcodeVersion>42900243</microcodeVersion>
>   <package>v7.0.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.replies
>index 1ad960c99b968e733595ef74a4623fe29d77aaa7..ee3b9bc1e8623044bdbd533af514bbb44c117e0e 100644
>--- a/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.replies
>@@ -26276,12 +26276,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -26360,7 +26373,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -26368,7 +26381,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -26442,7 +26455,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -26450,7 +26463,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -28206,12 +28219,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -28712,7 +28725,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -28720,7 +28733,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -28823,7 +28836,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -28831,7 +28844,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -29008,12 +29021,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -31073,12 +31086,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -31086,12 +31099,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -31099,12 +31112,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -32428,12 +32441,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -32515,16 +32528,16 @@
>       "capability": "background-snapshot"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -32533,7 +32546,7 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>@@ -32554,7 +32567,7 @@
>       }
>     ]
>   },
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>@@ -32565,7 +32578,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -32902,7 +32915,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -32916,7 +32929,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -33253,7 +33266,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -33268,7 +33281,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -33605,7 +33618,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml
>index fd317a9afa5946094ffc9ab19c6a38dc81774885..ecd229c49ca3ef0cd3f125b1fa3e46a697a5b3b4 100644
>--- a/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml
>@@ -190,6 +190,7 @@
>   <flag name='acpi-erst'/>
>   <flag name='machine-i8042-opt'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>7000000</version>
>   <microcodeVersion>43100243</microcodeVersion>
>   <package>v7.0.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.replies b/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.replies
>index 931d1c320687c71a75282822a904390334503cdd..5c21b5e85c6981f630b9918a007ede9db2f7e9fc 100644
>--- a/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.replies
>+++ b/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.replies
>@@ -26820,12 +26820,25 @@
>   "id": "libvirt-32"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-33"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-33"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -26904,7 +26917,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -26912,7 +26925,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -26986,12 +26999,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -27372,7 +27385,7 @@
>       "default-ram-id": "ppc_spapr.ram"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -27380,7 +27393,7 @@
>   "arguments": {
>     "typename": "pseries-7.1-machine"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -27622,7 +27635,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -27630,7 +27643,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -27743,12 +27756,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -30262,24 +30275,24 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "return": [
>     "tpm-spapr"
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -30287,12 +30300,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -31479,12 +31492,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -31574,7 +31587,7 @@
>       "capability": "postcopy-preempt"
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml b/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml
>index 427aa1ace96f2a09f78744a4717a7ba6f7175ea9..fc12e5de3d8052ce3b98f81439e78f8f2603ffed 100644
>--- a/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml
>+++ b/tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml
>@@ -160,6 +160,7 @@
>   <flag name='netdev.user'/>
>   <flag name='acpi-erst'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>7001000</version>
>   <microcodeVersion>42900244</microcodeVersion>
>   <package>v7.1.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.replies
>index cd2116d05a643d06feced427607360b8e9837945..9f578c5e42c040232841e92016bc04b1dd0c30ca 100644
>--- a/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.replies
>@@ -26999,12 +26999,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -27083,7 +27096,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -27091,7 +27104,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -27165,7 +27178,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -27173,7 +27186,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -28966,12 +28979,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -29490,7 +29503,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -29498,7 +29511,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -29611,7 +29624,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -29619,7 +29632,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -29811,12 +29824,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -31755,12 +31768,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -31768,12 +31781,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -31781,12 +31794,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -33110,12 +33123,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -33205,16 +33218,16 @@
>       "capability": "postcopy-preempt"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -33223,11 +33236,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "SGX is not enabled in KVM"
>@@ -33242,7 +33255,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -33580,7 +33593,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -33594,7 +33607,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -33932,7 +33945,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -33947,7 +33960,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -34285,7 +34298,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml
>index 32e4e8e1bb8bc265998bc68444235869fe5a41d9..70893b9f0dc32037f90745bbc37baa6f670ecbcb 100644
>--- a/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml
>@@ -195,6 +195,7 @@
>   <flag name='intel-iommu.dma-translation'/>
>   <flag name='machine-i8042-opt'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>7001000</version>
>   <microcodeVersion>43100244</microcodeVersion>
>   <package>v7.1.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_ppc.replies b/tests/qemucapabilitiesdata/caps_7.2.0_ppc.replies
>index 5cd0d7e87da276b510943ed5a1ac64af989c12b8..36c762608cc4d88e4f53c22aba1030caf307e449 100644
>--- a/tests/qemucapabilitiesdata/caps_7.2.0_ppc.replies
>+++ b/tests/qemucapabilitiesdata/caps_7.2.0_ppc.replies
>@@ -27426,12 +27426,25 @@
>   "id": "libvirt-30"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-31"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-31"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -27515,7 +27528,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -27523,7 +27536,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -27602,12 +27615,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -27710,7 +27723,7 @@
>       "default-ram-id": "mpc8544ds.ram"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -27718,7 +27731,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -27831,12 +27844,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -30146,32 +30159,32 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -31487,12 +31500,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -31582,5 +31595,5 @@
>       "capability": "postcopy-preempt"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml b/tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml
>index 56cb66d3947a6de98ee21b42d467cf2f10b4ca52..d6e236b6f02f4440b556fbcb08291e99e605fe73 100644
>--- a/tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml
>+++ b/tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml
>@@ -155,6 +155,7 @@
>   <flag name='netdev.user'/>
>   <flag name='acpi-erst'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>7002000</version>
>   <microcodeVersion>0</microcodeVersion>
>   <package>qemu-7.2.0-6.fc37</package>
>diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.replies b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.replies
>index c85be45cd18c06b384bb9b21144f3cea6c14bf56..e4b50cdef1fe1a38ddb8923771b83e6a726cd095 100644
>--- a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.replies
>+++ b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.replies
>@@ -27968,12 +27968,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -28057,7 +28070,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -28065,7 +28078,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -28144,7 +28157,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -28152,7 +28165,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -29945,12 +29958,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -30487,7 +30500,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -30495,7 +30508,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -30608,7 +30621,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -30616,7 +30629,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -30808,12 +30821,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -32752,12 +32765,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -32765,12 +32778,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -32778,12 +32791,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -34107,12 +34120,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -34202,16 +34215,16 @@
>       "capability": "postcopy-preempt"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -34220,11 +34233,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "SGX is not enabled in KVM"
>@@ -34239,7 +34252,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -34577,7 +34590,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -34591,7 +34604,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -34929,7 +34942,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -34944,7 +34957,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -35282,7 +35295,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml
>index 0ebcb94a3189013aebcd09919f0077919e359b87..8b5211cd2c55c1c22517bed71605757baefc3d82 100644
>--- a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml
>+++ b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml
>@@ -199,6 +199,7 @@
>   <flag name='intel-iommu.dma-translation'/>
>   <flag name='machine-i8042-opt'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>7002000</version>
>   <microcodeVersion>43100245</microcodeVersion>
>   <package>v7.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.replies
>index 4b56adeafa15753f8ba519cacedc4a2c46ff97d6..e0bda325bd50543d80c65d0a512ec9fac9289452 100644
>--- a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.replies
>@@ -27968,12 +27968,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -28057,7 +28070,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -28065,7 +28078,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -28144,7 +28157,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -28152,7 +28165,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -29945,12 +29958,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -30487,7 +30500,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -30495,7 +30508,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -30608,7 +30621,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -30616,7 +30629,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -30808,12 +30821,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -32752,12 +32765,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -32765,12 +32778,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -32778,12 +32791,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -34107,12 +34120,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -34202,16 +34215,16 @@
>       "capability": "postcopy-preempt"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -34220,11 +34233,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "SGX is not enabled in KVM"
>@@ -34239,7 +34252,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -34577,7 +34590,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -34591,7 +34604,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -34929,7 +34942,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -34944,7 +34957,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -35282,7 +35295,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml
>index 025ced01d9efe91199c1a58c6880d504ca6b169d..053bf864a423ff5b0e3fb56af2a4e5c2a88d6746 100644
>--- a/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml
>@@ -199,6 +199,7 @@
>   <flag name='intel-iommu.dma-translation'/>
>   <flag name='machine-i8042-opt'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>7002000</version>
>   <microcodeVersion>43100245</microcodeVersion>
>   <package>v7.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.replies b/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.replies
>index 50e1fe583509a69e9dcb3f3e8618de6f9640b568..59250e3751641c78bdf822ad2d53b6fd838b3438 100644
>--- a/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.replies
>+++ b/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.replies
>@@ -25904,12 +25904,25 @@
>   "id": "libvirt-28"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-29"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-29"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-29"
>+  "id": "libvirt-30"
> }
>
> {
>@@ -25993,7 +26006,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-29"
>+  "id": "libvirt-30"
> }
>
> {
>@@ -26001,7 +26014,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-30"
>+  "id": "libvirt-31"
> }
>
> {
>@@ -26080,12 +26093,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-30"
>+  "id": "libvirt-31"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -26160,7 +26173,7 @@
>       "default-ram-id": "riscv_virt_board.ram"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -26168,7 +26181,7 @@
>   "arguments": {
>     "typename": "virt-machine"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -26301,7 +26314,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -26309,7 +26322,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -26422,24 +26435,24 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "return": [
>     "tpm-tis"
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -26447,12 +26460,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -27814,12 +27827,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -27909,5 +27922,5 @@
>       "capability": "postcopy-preempt"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml b/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml
>index 0207637ebc8ee228632c07e3e5806f641eba4933..6623669985b6326a9b60a64cca630385c0ea5537 100644
>--- a/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml
>+++ b/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml
>@@ -143,6 +143,7 @@
>   <flag name='netdev.user'/>
>   <flag name='snapshot-internal-qmp'/>
>   <flag name='machine.virt.aia'/>
>+  <flag name='usb-bot'/>
>   <version>7002050</version>
>   <microcodeVersion>0</microcodeVersion>
>   <package>v7.2.0-333-g222059a0fc</package>
>diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies
>index 4cad3763885e05e163ff7424448cb8416df96e31..4e4f9e6db4561b3ecee0b550f1c0b2f71d7584cf 100644
>--- a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies
>@@ -29339,12 +29339,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -29428,7 +29441,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -29436,7 +29449,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -29515,7 +29528,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -29523,7 +29536,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -31340,12 +31353,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -31961,7 +31974,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -31969,7 +31982,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -32082,7 +32095,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -32090,7 +32103,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -32282,12 +32295,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -34333,12 +34346,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -34346,12 +34359,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -34359,12 +34372,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -35805,12 +35818,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -35900,16 +35913,16 @@
>       "capability": "postcopy-preempt"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -35918,11 +35931,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "SGX is not enabled in KVM"
>@@ -35937,7 +35950,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -36280,7 +36293,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -36294,7 +36307,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -36637,7 +36650,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -36652,7 +36665,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -37101,7 +37114,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml
>index 5f45788b777edc2d9ae31631b4559351b1c3f7bf..aa3d4e2d140e132f06bf9f90b348ebb73aab3e41 100644
>--- a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml
>@@ -203,6 +203,7 @@
>   <flag name='intel-iommu.dma-translation'/>
>   <flag name='machine-i8042-opt'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>8000000</version>
>   <microcodeVersion>43100244</microcodeVersion>
>   <package>v8.0.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies b/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies
>index 032c102d4b57b0f1e635e257f456ecb64ad3896a..5630cf71ae152f50024cf13f285bc3ea062e6bca 100644
>--- a/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies
>+++ b/tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies
>@@ -27805,12 +27805,25 @@
>   "id": "libvirt-29"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-30"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-30"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-30"
>+  "id": "libvirt-31"
> }
>
> {
>@@ -27895,7 +27908,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-30"
>+  "id": "libvirt-31"
> }
>
> {
>@@ -27903,7 +27916,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -27982,12 +27995,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -28262,7 +28275,7 @@
>       "default-ram-id": "s390.ram"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -28270,7 +28283,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -28383,12 +28396,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -29152,32 +29165,32 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -30400,12 +30413,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -30503,7 +30516,7 @@
>       "capability": "dirty-limit"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -30514,7 +30527,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -30563,7 +30576,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_8.1.0_s390x.xml b/tests/qemucapabilitiesdata/caps_8.1.0_s390x.xml
>index 16a3e3fbe0b93aea605965fabd37b324881b49c7..49002d3caf9ea55c5a5796167bffc09603002d10 100644
>--- a/tests/qemucapabilitiesdata/caps_8.1.0_s390x.xml
>+++ b/tests/qemucapabilitiesdata/caps_8.1.0_s390x.xml
>@@ -123,6 +123,7 @@
>   <flag name='usb-mtp'/>
>   <flag name='netdev.user'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>8001000</version>
>   <microcodeVersion>39100245</microcodeVersion>
>   <package>v8.1.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.replies
>index 888a5d3b6adab4a1f325aa7b00eefa508a06eb24..4e6c0257e4dd23417dc7235fe4cf61790d7a26a1 100644
>--- a/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.replies
>@@ -30094,12 +30094,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -30188,7 +30201,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -30196,7 +30209,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -30275,7 +30288,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -30283,7 +30296,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -32180,12 +32193,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -32821,7 +32834,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -32829,7 +32842,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -32942,7 +32955,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -32950,7 +32963,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -33138,12 +33151,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -35525,12 +35538,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -35538,12 +35551,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -35551,12 +35564,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -37014,12 +37027,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -37117,16 +37130,16 @@
>       "capability": "dirty-limit"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -37135,11 +37148,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "SGX is not enabled in KVM"
>@@ -37154,7 +37167,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -37517,7 +37530,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -37531,7 +37544,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -37894,7 +37907,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -37909,7 +37922,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -38378,7 +38391,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml
>index 7dee7f94c2b851fb7f9fcd0e03259cc097474afb..f24cfe70a431a2ffcb9f1a7cc640ad84ce21bec7 100644
>--- a/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml
>@@ -205,6 +205,7 @@
>   <flag name='intel-iommu.dma-translation'/>
>   <flag name='machine-i8042-opt'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>8001000</version>
>   <microcodeVersion>43100245</microcodeVersion>
>   <package>v8.1.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.replies b/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.replies
>index 203774ecff413e0f39d8e7751d936d82648dd0f1..247cf11b74dc5ef0a877480bb672faa24f9648a2 100644
>--- a/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.replies
>+++ b/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.replies
>@@ -31154,12 +31154,25 @@
>   "id": "libvirt-31"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-32"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-32"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -31249,7 +31262,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -31257,7 +31270,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -31336,7 +31349,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -31344,7 +31357,7 @@
>   "arguments": {
>     "typename": "max-arm-cpu"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -31553,12 +31566,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -32670,7 +32683,7 @@
>       "default-ram-id": "ram"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -32678,7 +32691,7 @@
>   "arguments": {
>     "typename": "virt-8.2-machine"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -32914,7 +32927,7 @@
>       "type": "child<cfi.pflash01>"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -32922,7 +32935,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -33035,12 +33048,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -33334,12 +33347,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -33347,12 +33360,12 @@
>     "tpm-tis",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -33360,12 +33373,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -34730,12 +34743,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -34833,12 +34846,12 @@
>       "capability": "dirty-limit"
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-gic-capabilities",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -34854,7 +34867,7 @@
>       "kernel": false
>     }
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -34865,7 +34878,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -34898,7 +34911,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -34913,11 +34926,11 @@
>       }
>     }
>   },
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>-  "id": "libvirt-45",
>+  "id": "libvirt-46",
>   "error": {
>     "class": "GenericError",
>     "desc": "Parameter 'hv-passthrough' is unexpected"
>diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.xml
>index 78082dbf3f0404902be0226b3ea91ee2f606a6f5..5d2c6ad0034e4633ea84073fc0498fcea8117a5e 100644
>--- a/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.xml
>+++ b/tests/qemucapabilitiesdata/caps_8.2.0_aarch64.xml
>@@ -170,6 +170,7 @@
>   <flag name='netdev.user'/>
>   <flag name='acpi-erst'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>8002000</version>
>   <microcodeVersion>61700246</microcodeVersion>
>   <package>v8.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.replies b/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.replies
>index b67bb23c1bf9a050bee5d0a401a8da2c06e0a80c..da066ec0892b4ac7beb2fa7f6e8ece62364c0083 100644
>--- a/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.replies
>+++ b/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.replies
>@@ -31388,12 +31388,25 @@
>   "id": "libvirt-31"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-32"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-32"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -31487,7 +31500,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -31495,7 +31508,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -31574,7 +31587,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -31582,7 +31595,7 @@
>   "arguments": {
>     "typename": "max-arm-cpu"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -31724,12 +31737,12 @@
>       "type": "link<irq>"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -32787,7 +32800,7 @@
>       "default-ram-id": "ram"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -32795,7 +32808,7 @@
>   "arguments": {
>     "typename": "virt-8.2-machine"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -33031,7 +33044,7 @@
>       "type": "child<cfi.pflash01>"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -33039,7 +33052,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -33152,12 +33165,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -33379,12 +33392,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -33392,12 +33405,12 @@
>     "tpm-tis",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -33405,12 +33418,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -34892,12 +34905,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -34995,12 +35008,12 @@
>       "capability": "dirty-limit"
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-gic-capabilities",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -35016,7 +35029,7 @@
>       "kernel": false
>     }
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -35027,11 +35040,11 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>-  "id": "libvirt-44",
>+  "id": "libvirt-45",
>   "error": {
>     "class": "GenericError",
>     "desc": "The CPU type 'host' requires KVM"
>@@ -35050,11 +35063,11 @@
>       }
>     }
>   },
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>-  "id": "libvirt-45",
>+  "id": "libvirt-46",
>   "error": {
>     "class": "GenericError",
>     "desc": "The CPU type 'host' requires KVM"
>diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.xml b/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.xml
>index 912eb45db675395f5c1bc9a78ca70ab345ee0caa..41f83f5cd349cd3eebef4b3b30533a17e4569139 100644
>--- a/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.xml
>+++ b/tests/qemucapabilitiesdata/caps_8.2.0_armv7l.xml
>@@ -177,6 +177,7 @@
>   <flag name='netdev.user'/>
>   <flag name='acpi-erst'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>8002000</version>
>   <microcodeVersion>0</microcodeVersion>
>   <package>qemu-8.2.0-7.fc39</package>
>diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.replies b/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.replies
>index 346c327e846a07f6863cc24adadfaf0f52aff2a6..d9ab0a2c23be8b8b710d57d80d6f003992a3d211 100644
>--- a/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.replies
>+++ b/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.replies
>@@ -28042,12 +28042,25 @@
>   "id": "libvirt-30"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-31"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-31"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -28137,7 +28150,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -28145,7 +28158,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -28224,12 +28237,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -28263,7 +28276,7 @@
>       "default-ram-id": "ram"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -28271,7 +28284,7 @@
>   "arguments": {
>     "typename": "virt-machine"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -28403,7 +28416,7 @@
>       "type": "str"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -28411,7 +28424,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -28524,12 +28537,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -28553,32 +28566,32 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -29893,12 +29906,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -29996,7 +30009,7 @@
>       "capability": "dirty-limit"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -30007,11 +30020,11 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>-  "id": "libvirt-41",
>+  "id": "libvirt-42",
>   "error": {
>     "class": "GenericError",
>     "desc": "The CPU type 'host' is not a recognized LoongArch CPU type"
>diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.xml b/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.xml
>index 60b980e256e580bebeb1af89f34d84d52133c759..04ea12a28a453a40ee3878cc836e5ef05261012b 100644
>--- a/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.xml
>+++ b/tests/qemucapabilitiesdata/caps_8.2.0_loongarch64.xml
>@@ -160,6 +160,7 @@
>   <flag name='netdev.user'/>
>   <flag name='acpi-erst'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>8002000</version>
>   <microcodeVersion>106300246</microcodeVersion>
>   <package>v8.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies b/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies
>index 222a9fdfdcc6ed5749c99c0bcede49722cdaab44..f7fa980213f9e9fbfe956b268e215f9b6e50e1f9 100644
>--- a/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies
>+++ b/tests/qemucapabilitiesdata/caps_8.2.0_s390x.replies
>@@ -28498,12 +28498,25 @@
>   "id": "libvirt-29"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-30"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-30"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-30"
>+  "id": "libvirt-31"
> }
>
> {
>@@ -28593,7 +28606,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-30"
>+  "id": "libvirt-31"
> }
>
> {
>@@ -28601,7 +28614,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -28680,12 +28693,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -28970,7 +28983,7 @@
>       "default-ram-id": "s390.ram"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -28978,7 +28991,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -29091,12 +29104,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -29860,32 +29873,32 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -31116,12 +31129,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -31219,7 +31232,7 @@
>       "capability": "dirty-limit"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -31230,7 +31243,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -31279,7 +31292,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_s390x.xml b/tests/qemucapabilitiesdata/caps_8.2.0_s390x.xml
>index 8f3610408031c9165795ab99fd9d33b954da2ae6..5fe7bda1fbf8e62e6181eda5237f1c183950f0c3 100644
>--- a/tests/qemucapabilitiesdata/caps_8.2.0_s390x.xml
>+++ b/tests/qemucapabilitiesdata/caps_8.2.0_s390x.xml
>@@ -124,6 +124,7 @@
>   <flag name='virtio-sound'/>
>   <flag name='netdev.user'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>8002000</version>
>   <microcodeVersion>39100246</microcodeVersion>
>   <package>v8.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies
>index 33e4978c3844fb72955f0f78d1c8f61431bc4e6c..0d1ec5aa7ced7a6bdade90c1651c52fab2add7a5 100644
>--- a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies
>@@ -30785,12 +30785,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -30884,7 +30897,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -30892,7 +30905,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -30971,7 +30984,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -30979,7 +30992,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -32892,12 +32905,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -33513,7 +33526,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -33521,7 +33534,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -33634,7 +33647,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -33642,7 +33655,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -33830,12 +33843,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -36217,12 +36230,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -36230,12 +36243,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -36243,12 +36256,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -37719,12 +37732,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -37822,16 +37835,16 @@
>       "capability": "dirty-limit"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -37840,11 +37853,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "SGX is not enabled in KVM"
>@@ -37859,7 +37872,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -38226,7 +38239,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -38240,7 +38253,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -38607,7 +38620,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -38622,7 +38635,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -39095,7 +39108,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml
>index 51e14736cd118bf73999a23c7e7c0c59b1f4f389..02e8dcc6a0d79470ca90b468b5fd754e075f7506 100644
>--- a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml
>@@ -208,6 +208,7 @@
>   <flag name='intel-iommu.dma-translation'/>
>   <flag name='machine-i8042-opt'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>8002000</version>
>   <microcodeVersion>43100246</microcodeVersion>
>   <package>v8.2.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.replies
>index 89fefb863be144ef3334fa8f8c3f7e423ba202a4..bbe061599675a5fe11565124c5c1999ded18d58f 100644
>--- a/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.replies
>@@ -31003,12 +31003,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -31102,7 +31115,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -31110,7 +31123,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -31189,7 +31202,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -31197,7 +31210,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -33114,12 +33127,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -33755,7 +33768,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -33763,7 +33776,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -33876,7 +33889,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -33884,7 +33897,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -34076,12 +34089,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -36463,12 +36476,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -36476,12 +36489,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -36489,12 +36502,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -37969,12 +37982,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -38076,16 +38089,16 @@
>       "capability": "mapped-ram"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -38094,11 +38107,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "SGX is not enabled in KVM"
>@@ -38113,7 +38126,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -38481,7 +38494,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -38495,7 +38508,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -38863,7 +38876,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -38878,7 +38891,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -39352,7 +39365,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml
>index 4b64547b1153d5de842a84a490394704a63195ec..d3efa5b5ff7e026d5e0fc791572c3db0efa02630 100644
>--- a/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml
>@@ -210,6 +210,7 @@
>   <flag name='intel-iommu.dma-translation'/>
>   <flag name='machine-i8042-opt'/>
>   <flag name='snapshot-internal-qmp'/>
>+  <flag name='usb-bot'/>
>   <version>9000000</version>
>   <microcodeVersion>43100245</microcodeVersion>
>   <package>v9.0.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.replies b/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.replies
>index 35b905e5b2398ec5f99d402d8b4c921bcc3724f5..be28dfe141436a54e90b3c9513f3c7486414392a 100644
>--- a/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.replies
>+++ b/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.replies
>@@ -29380,12 +29380,25 @@
>   "id": "libvirt-29"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-30"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-30"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-30"
>+  "id": "libvirt-31"
> }
>
> {
>@@ -29479,7 +29492,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-30"
>+  "id": "libvirt-31"
> }
>
> {
>@@ -29487,7 +29500,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -29566,12 +29579,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -29646,7 +29659,7 @@
>       "default-ram-id": "riscv_virt_board.ram"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -29654,7 +29667,7 @@
>   "arguments": {
>     "typename": "virt-machine"
>   },
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -29810,7 +29823,7 @@
>       "type": "child<cfi.pflash01>"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -29818,7 +29831,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -29931,12 +29944,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -30020,24 +30033,24 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "return": [
>     "tpm-tis"
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -30045,12 +30058,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -31464,12 +31477,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -31563,7 +31576,7 @@
>       "capability": "mapped-ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -31574,11 +31587,11 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>-  "id": "libvirt-40",
>+  "id": "libvirt-41",
>   "error": {
>     "class": "GenericError",
>     "desc": "The requested expansion type is not supported"
>diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml b/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml
>index ccc7673ba9c9f7f66a07ed43b33085f40c24a50a..438aed84a26185a06dffe42c71fd2efa69b7c54c 100644
>--- a/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml
>+++ b/tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml
>@@ -170,6 +170,7 @@
>   <flag name='snapshot-internal-qmp'/>
>   <flag name='migrate-incoming.exit-on-error'/>
>   <flag name='machine.virt.aia'/>
>+  <flag name='usb-bot'/>
>   <version>9001000</version>
>   <microcodeVersion>0</microcodeVersion>
>   <package>v9.1.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies
>index 0a523ba47eb7015be880f36db3ed990ec1821438..bf97ecb6cbb50924e88dc82ed902ebe46111454b 100644
>--- a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies
>+++ b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.replies
>@@ -29547,12 +29547,25 @@
>   "id": "libvirt-30"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-31"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-31"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -29642,7 +29655,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -29650,7 +29663,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -29729,12 +29742,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -30039,7 +30052,7 @@
>       "default-ram-id": "s390.ram"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -30047,7 +30060,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -30160,12 +30173,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -30803,32 +30816,32 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -32067,12 +32080,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -32166,7 +32179,7 @@
>       "capability": "mapped-ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -32177,7 +32190,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -32249,7 +32262,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -32260,7 +32273,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -32332,7 +32345,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml
>index a20b63051efa08d46c4617d569faec8c9a4f6394..eabef7c2b4677a9ec532fd21bc44912fa9dfc126 100644
>--- a/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml
>+++ b/tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml
>@@ -135,6 +135,7 @@
>   <flag name='snapshot-internal-qmp'/>
>   <flag name='query-cpu-model-expansion.deprecated-props'/>
>   <flag name='migrate-incoming.exit-on-error'/>
>+  <flag name='usb-bot'/>
>   <version>9001000</version>
>   <microcodeVersion>39100246</microcodeVersion>
>   <package>v9.1.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.replies
>index 4838037ee7eacc3674a0bf60ab67e8c91165065d..afe76c8b7a6591c444d2bb51adb6b0c5f7748270 100644
>--- a/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.replies
>@@ -31390,12 +31390,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -31489,7 +31502,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -31497,7 +31510,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -31576,7 +31589,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -31584,7 +31597,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -33633,12 +33646,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -34254,7 +34267,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -34262,7 +34275,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -34375,7 +34388,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -34383,7 +34396,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -34575,12 +34588,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -37131,12 +37144,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -37144,12 +37157,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -37157,12 +37170,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -38645,12 +38658,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -38744,16 +38757,16 @@
>       "capability": "mapped-ram"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -38762,11 +38775,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "Could not open '/dev/sgx_vepc': No such file or directory"
>@@ -38781,7 +38794,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -39159,7 +39172,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -39173,7 +39186,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -39551,7 +39564,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -39566,7 +39579,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -40054,7 +40067,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml
>index 196bab77973cc4ccbdd39a3893e47c6960ced288..db87bb13537e89becb6242e3816171c54da9bb49 100644
>--- a/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml
>@@ -209,6 +209,7 @@
>   <flag name='machine-i8042-opt'/>
>   <flag name='snapshot-internal-qmp'/>
>   <flag name='migrate-incoming.exit-on-error'/>
>+  <flag name='usb-bot'/>
>   <version>9001000</version>
>   <microcodeVersion>43100246</microcodeVersion>
>   <package>v9.1.0</package>
>diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies
>index 9a58acaf08045deaeb721ab8e1b4e3b41d5a1a4d..043f6318755e7cc6f7bec62a610bef50fbb28087 100644
>--- a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies
>+++ b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies
>@@ -29692,12 +29692,25 @@
>   "id": "libvirt-30"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-31"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-31"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -29787,7 +29800,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-31"
>+  "id": "libvirt-32"
> }
>
> {
>@@ -29795,7 +29808,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>@@ -29874,12 +29887,12 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-32"
>+  "id": "libvirt-33"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -30194,7 +30207,7 @@
>       "default-ram-id": "s390.ram"
>     }
>   ],
>-  "id": "libvirt-33"
>+  "id": "libvirt-34"
> }
>
> {
>@@ -30202,7 +30215,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>@@ -30315,12 +30328,12 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-34"
>+  "id": "libvirt-35"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>@@ -30958,32 +30971,32 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-35"
>+  "id": "libvirt-36"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "return": [],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -32226,12 +32239,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -32325,7 +32338,7 @@
>       "capability": "mapped-ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -32336,7 +32349,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -32408,7 +32421,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -32419,7 +32432,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -32491,7 +32504,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml
>index 767a95bd3e49cf840dc550178397c27a317370b6..43a00004ea53f355045b93b5af8d07eeb7fded55 100644
>--- a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml
>+++ b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml
>@@ -138,6 +138,7 @@
>   <flag name='netdev-stream-reconnect-miliseconds'/>
>   <flag name='query-cpu-model-expansion.deprecated-props'/>
>   <flag name='migrate-incoming.exit-on-error'/>
>+  <flag name='usb-bot'/>
>   <version>9001050</version>
>   <microcodeVersion>39100247</microcodeVersion>
>   <package>v9.1.0-1348-g11b8920ed2</package>
>diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.replies
>index 6b2ecb40d0102c7a540572c33e17ca464c54b867..dac7ca1f3f2cea2a61fbe5140df6ec8700c37248 100644
>--- a/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.replies
>+++ b/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.replies
>@@ -31726,12 +31726,25 @@
>   "id": "libvirt-35"
> }
>
>+{
>+  "execute": "device-list-properties",
>+  "arguments": {
>+    "typename": "usb-bot"
>+  },
>+  "id": "libvirt-36"
>+}
>+
>+{
>+  "return": [],
>+  "id": "libvirt-36"
>+}
>+
> {
>   "execute": "qom-list-properties",
>   "arguments": {
>     "typename": "memory-backend-file"
>   },
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -31825,7 +31838,7 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-36"
>+  "id": "libvirt-37"
> }
>
> {
>@@ -31833,7 +31846,7 @@
>   "arguments": {
>     "typename": "memory-backend-memfd"
>   },
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -31912,7 +31925,7 @@
>       "type": "int"
>     }
>   ],
>-  "id": "libvirt-37"
>+  "id": "libvirt-38"
> }
>
> {
>@@ -31920,7 +31933,7 @@
>   "arguments": {
>     "typename": "max-x86_64-cpu"
>   },
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>@@ -34062,12 +34075,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-38"
>+  "id": "libvirt-39"
> }
>
> {
>   "execute": "query-machines",
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -34703,7 +34716,7 @@
>       "default-ram-id": "pc.ram"
>     }
>   ],
>-  "id": "libvirt-39"
>+  "id": "libvirt-40"
> }
>
> {
>@@ -34711,7 +34724,7 @@
>   "arguments": {
>     "typename": "none-machine"
>   },
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -34829,7 +34842,7 @@
>       "type": "child<container>"
>     }
>   ],
>-  "id": "libvirt-40"
>+  "id": "libvirt-41"
> }
>
> {
>@@ -34837,7 +34850,7 @@
>   "arguments": {
>     "typename": "generic-pc-machine"
>   },
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>@@ -35035,12 +35048,12 @@
>       "type": "bool"
>     }
>   ],
>-  "id": "libvirt-41"
>+  "id": "libvirt-42"
> }
>
> {
>   "execute": "query-cpu-definitions",
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>@@ -37483,12 +37496,12 @@
>       "deprecated": false
>     }
>   ],
>-  "id": "libvirt-42"
>+  "id": "libvirt-43"
> }
>
> {
>   "execute": "query-tpm-models",
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>@@ -37496,12 +37509,12 @@
>     "tpm-crb",
>     "tpm-tis"
>   ],
>-  "id": "libvirt-43"
>+  "id": "libvirt-44"
> }
>
> {
>   "execute": "query-tpm-types",
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>@@ -37509,12 +37522,12 @@
>     "passthrough",
>     "emulator"
>   ],
>-  "id": "libvirt-44"
>+  "id": "libvirt-45"
> }
>
> {
>   "execute": "query-command-line-options",
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>@@ -39007,12 +39020,12 @@
>       "option": "drive"
>     }
>   ],
>-  "id": "libvirt-45"
>+  "id": "libvirt-46"
> }
>
> {
>   "execute": "query-migrate-capabilities",
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>@@ -39106,16 +39119,16 @@
>       "capability": "mapped-ram"
>     }
>   ],
>-  "id": "libvirt-46"
>+  "id": "libvirt-47"
> }
>
> {
>   "execute": "query-sev-capabilities",
>-  "id": "libvirt-47"
>+  "id": "libvirt-48"
> }
>
> {
>-  "id": "libvirt-47",
>+  "id": "libvirt-48",
>   "error": {
>     "class": "GenericError",
>     "desc": "SEV: Failed to open /dev/sev: No such file or directory"
>@@ -39124,11 +39137,11 @@
>
> {
>   "execute": "query-sgx-capabilities",
>-  "id": "libvirt-48"
>+  "id": "libvirt-49"
> }
>
> {
>-  "id": "libvirt-48",
>+  "id": "libvirt-49",
>   "error": {
>     "class": "GenericError",
>     "desc": "Could not open '/dev/sgx_vepc': No such file or directory"
>@@ -39143,7 +39156,7 @@
>       "name": "host"
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -39543,7 +39556,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-49"
>+  "id": "libvirt-50"
> }
>
> {
>@@ -39557,7 +39570,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -39957,7 +39970,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-50"
>+  "id": "libvirt-51"
> }
>
> {
>@@ -39972,7 +39985,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>@@ -40483,7 +40496,7 @@
>       }
>     }
>   },
>-  "id": "libvirt-51"
>+  "id": "libvirt-52"
> }
>
> {
>diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml
>index 824504dba0905ab4a289f3a132fdd83d4819daea..4bf25e81af051db0b65e5c68588014082b44507d 100644
>--- a/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml
>+++ b/tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml
>@@ -211,6 +211,7 @@
>   <flag name='chardev-reconnect-miliseconds'/>
>   <flag name='netdev-stream-reconnect-miliseconds'/>
>   <flag name='migrate-incoming.exit-on-error'/>
>+  <flag name='usb-bot'/>
>   <version>9002000</version>
>   <microcodeVersion>43100247</microcodeVersion>
>   <package>v9.2.0</package>
>
>-- 
>2.48.1
>