"vhost-vsock",
"chardev-fd-pass",
"tpm-emulator",
+ "mch",
+ "mch.extended-tseg-mbytes",
);
{ "hda-output", QEMU_CAPS_HDA_OUTPUT },
{ "vmgenid", QEMU_CAPS_DEVICE_VMGENID },
{ "vhost-vsock-device", QEMU_CAPS_DEVICE_VHOST_VSOCK },
+ { "mch", QEMU_CAPS_DEVICE_MCH },
};
static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsVirtioBalloon[] = {
{ "cssid-unrestricted", QEMU_CAPS_CCW_CSSID_UNRESTRICTED },
};
+static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsMCH[] = {
+ { "extended-tseg-mbytes", QEMU_CAPS_MCH_EXTENDED_TSEG_MBYTES },
+};
+
/* see documentation for virQEMUQAPISchemaPathGet for the query format */
static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] = {
{ "blockdev-add/arg-type/options/+gluster/debug-level", QEMU_CAPS_GLUSTER_DEBUG_LEVEL},
{ "virtual-css-bridge", virQEMUCapsObjectPropsVirtualCSSBridge,
ARRAY_CARDINALITY(virQEMUCapsObjectPropsVirtualCSSBridge),
QEMU_CAPS_CCW },
+ { "mch", virQEMUCapsDevicePropsMCH,
+ ARRAY_CARDINALITY(virQEMUCapsDevicePropsMCH),
+ QEMU_CAPS_DEVICE_MCH },
};
static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendFile[] = {
QEMU_CAPS_DEVICE_VHOST_VSOCK, /* -device vhost-vsock-* */
QEMU_CAPS_CHARDEV_FD_PASS, /* Passing pre-opened FDs for chardevs */
QEMU_CAPS_DEVICE_TPM_EMULATOR, /* -tpmdev emulator */
+ QEMU_CAPS_DEVICE_MCH, /* Northbridge in q35 machine types */
+ QEMU_CAPS_MCH_EXTENDED_TSEG_MBYTES, /* -global mch.extended-tseg-mbytes */
QEMU_CAPS_LAST /* this must always be the last item */
} virQEMUCapsFlags;
"id": "libvirt-36"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-37"
+}
+
{
"return": [
{
"cpu-max": 1
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"name": "qemu64"
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
"return": [
],
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
"return": [
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"option": "drive"
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"capability": "xbzrle"
}
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
<flag name='kernel-irqchip'/>
<flag name='isa-serial'/>
<flag name='hda-output'/>
+ <flag name='mch'/>
<version>1005003</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>46523</microcodeVersion>
+ <microcodeVersion>46889</microcodeVersion>
<package></package>
<arch>x86_64</arch>
<cpu type='kvm' name='Opteron_G5'/>
"id": "libvirt-36"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-37"
+}
+
{
"return": [
{
"cpu-max": 1
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"name": "qemu64"
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
"return": [
],
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
"return": [
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"option": "drive"
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"capability": "zero-blocks"
}
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
<flag name='kernel-irqchip'/>
<flag name='isa-serial'/>
<flag name='hda-output'/>
+ <flag name='mch'/>
<version>1006000</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>44752</microcodeVersion>
+ <microcodeVersion>45118</microcodeVersion>
<package></package>
<arch>x86_64</arch>
<cpu type='kvm' name='Opteron_G5'/>
"id": "libvirt-36"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-37"
+}
+
{
"return": [
{
"cpu-max": 1
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"name": "qemu64"
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
"return": [
],
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
"return": [
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"option": "drive"
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"capability": "zero-blocks"
}
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
<flag name='kernel-irqchip'/>
<flag name='isa-serial'/>
<flag name='hda-output'/>
+ <flag name='mch'/>
<version>1007000</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>50196</microcodeVersion>
+ <microcodeVersion>50562</microcodeVersion>
<package></package>
<arch>x86_64</arch>
<cpu type='kvm' name='Opteron_G5'/>
"id": "libvirt-36"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-37"
+}
+
{
"return": [
{
"cpu-max": 255
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"name": "qemu64"
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
"return": [
"tpm-tis"
],
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
"return": [
"passthrough"
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"option": "drive"
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"capability": "zero-blocks"
}
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
<flag name='kernel-irqchip'/>
<flag name='isa-serial'/>
<flag name='hda-output'/>
+ <flag name='mch'/>
<version>2001001</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>58992</microcodeVersion>
+ <microcodeVersion>59358</microcodeVersion>
<package></package>
<arch>x86_64</arch>
<cpu type='kvm' name='Opteron_G5'/>
"id": "libvirt-39"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-40"
+}
+
{
"return": [
{
"alias": "q35"
}
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"migration-safe": true
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"return": [
"tpm-tis"
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
"return": [
"passthrough"
],
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
"option": "drive"
}
],
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
"capability": "return-path"
}
],
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
"meta-type": "object"
}
],
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
}
}
},
- "id": "libvirt-47"
+ "id": "libvirt-48"
}
{
}
}
},
- "id": "libvirt-48"
+ "id": "libvirt-49"
}
{
}
}
},
- "id": "libvirt-49"
+ "id": "libvirt-50"
}
{
}
}
},
- "id": "libvirt-50"
+ "id": "libvirt-51"
}
{
<flag name='blockdev-del'/>
<flag name='vmgenid'/>
<flag name='vhost-vsock'/>
+ <flag name='mch'/>
<version>2010000</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>344938</microcodeVersion>
+ <microcodeVersion>345304</microcodeVersion>
<package> (v2.10.0)</package>
<arch>x86_64</arch>
<hostCPU type='kvm' model='base' migratability='yes'>
"id": "libvirt-39"
}
+{
+ "return": [
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "x-pcie-lnksta-dllla",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "multifunction",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "extended-tseg-mbytes",
+ "type": "uint16"
+ },
+ {
+ "name": "romfile",
+ "type": "str"
+ },
+ {
+ "name": "x-pcie-extcap-init",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "command_serr_enable",
+ "description": "on/off",
+ "type": "bool"
+ },
+ {
+ "name": "addr",
+ "description": "Slot and optional function number, example: 06.0 or 06",
+ "type": "int32"
+ }
+ ],
+ "id": "libvirt-40"
+}
+
{
"return": [
{
"type": "string"
}
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"cpu-max": 255
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"migration-safe": true
}
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
"tpm-crb",
"tpm-tis"
],
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
"passthrough",
"emulator"
],
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
"option": "drive"
}
],
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
"capability": "dirty-bitmaps"
}
],
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
"meta-type": "object"
}
],
- "id": "libvirt-47"
+ "id": "libvirt-48"
}
{
}
}
},
- "id": "libvirt-48"
+ "id": "libvirt-49"
}
{
}
}
},
- "id": "libvirt-49"
+ "id": "libvirt-50"
}
{
}
}
},
- "id": "libvirt-50"
+ "id": "libvirt-51"
}
{
}
}
},
- "id": "libvirt-51"
+ "id": "libvirt-52"
}
{
<flag name='vhost-vsock'/>
<flag name='chardev-fd-pass'/>
<flag name='tpm-emulator'/>
+ <flag name='mch'/>
+ <flag name='mch.extended-tseg-mbytes'/>
<version>2011090</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>390813</microcodeVersion>
+ <microcodeVersion>391586</microcodeVersion>
<package>v2.12.0-rc0</package>
<arch>x86_64</arch>
<hostCPU type='kvm' model='base' migratability='yes'>
"id": "libvirt-39"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-40"
+}
+
{
"return": [
{
"cpu-max": 255
}
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"name": "qemu64"
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"return": [
"tpm-tis"
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
"return": [
"passthrough"
],
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
"option": "drive"
}
],
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
"capability": "events"
}
],
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
<flag name='isa-serial'/>
<flag name='sdl-gl'/>
<flag name='hda-output'/>
+ <flag name='mch'/>
<version>2004000</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>75406</microcodeVersion>
+ <microcodeVersion>75772</microcodeVersion>
<package></package>
<arch>x86_64</arch>
<cpu type='kvm' name='Opteron_G5'/>
"id": "libvirt-39"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-40"
+}
+
{
"return": [
{
"cpu-max": 255
}
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"name": "qemu64"
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"return": [
"tpm-tis"
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
"return": [
"passthrough"
],
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
"option": "drive"
}
],
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
"capability": "x-postcopy-ram"
}
],
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
"meta-type": "array"
}
],
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
<flag name='isa-serial'/>
<flag name='sdl-gl'/>
<flag name='hda-output'/>
+ <flag name='mch'/>
<version>2005000</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>216528</microcodeVersion>
+ <microcodeVersion>216894</microcodeVersion>
<package></package>
<arch>x86_64</arch>
<cpu type='kvm' name='Opteron_G5'/>
"id": "libvirt-39"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-40"
+}
+
{
"return": [
{
"cpu-max": 255
}
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"name": "qemu64"
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"return": [
"tpm-tis"
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
"return": [
"passthrough"
],
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
"option": "drive"
}
],
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
"capability": "postcopy-ram"
}
],
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
"meta-type": "array"
}
],
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
<flag name='nbd-tls'/>
<flag name='sdl-gl'/>
<flag name='hda-output'/>
+ <flag name='mch'/>
<version>2006000</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>227332</microcodeVersion>
+ <microcodeVersion>227698</microcodeVersion>
<package></package>
<arch>x86_64</arch>
<cpu type='kvm' name='Opteron_G5'/>
"id": "libvirt-39"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-40"
+}
+
{
"return": [
{
"cpu-max": 255
}
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"name": "qemu64"
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"return": [
"tpm-tis"
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
"return": [
"passthrough"
],
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
"option": "drive"
}
],
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
"capability": "postcopy-ram"
}
],
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
"meta-type": "object"
}
],
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
<flag name='nbd-tls'/>
<flag name='sdl-gl'/>
<flag name='hda-output'/>
+ <flag name='mch'/>
<version>2007000</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>239029</microcodeVersion>
+ <microcodeVersion>239395</microcodeVersion>
<package> (v2.7.0)</package>
<arch>x86_64</arch>
<cpu type='kvm' name='Opteron_G5'/>
"id": "libvirt-39"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-40"
+}
+
{
"return": [
{
"cpu-max": 255
}
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"static": false
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"return": [
"tpm-tis"
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
"return": [
"passthrough"
],
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
"option": "drive"
}
],
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
"capability": "x-colo"
}
],
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
"meta-type": "object"
}
],
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
<flag name='sdl-gl'/>
<flag name='hda-output'/>
<flag name='vhost-vsock'/>
+ <flag name='mch'/>
<version>2008000</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>255684</microcodeVersion>
+ <microcodeVersion>256050</microcodeVersion>
<package> (v2.8.0)</package>
<arch>x86_64</arch>
<cpu type='kvm' name='host' usable='yes'/>
"id": "libvirt-39"
}
+{
+ "return": [
+ {
+ "name": "command_serr_enable",
+ "type": "on/off"
+ },
+ {
+ "name": "multifunction",
+ "type": "on/off"
+ },
+ {
+ "name": "rombar",
+ "type": "uint32"
+ },
+ {
+ "name": "romfile",
+ "type": "string"
+ },
+ {
+ "name": "addr",
+ "type": "pci-devfn"
+ }
+ ],
+ "id": "libvirt-40"
+}
+
{
"return": [
{
"cpu-max": 255
}
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"migration-safe": true
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"return": [
"tpm-tis"
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
"return": [
"passthrough"
],
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
"option": "drive"
}
],
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
"capability": "release-ram"
}
],
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
"meta-type": "object"
}
],
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
}
}
},
- "id": "libvirt-47"
+ "id": "libvirt-48"
}
{
}
}
},
- "id": "libvirt-48"
+ "id": "libvirt-49"
}
{
}
}
},
- "id": "libvirt-49"
+ "id": "libvirt-50"
}
{
}
}
},
- "id": "libvirt-50"
+ "id": "libvirt-51"
}
{
<flag name='blockdev-del'/>
<flag name='vmgenid'/>
<flag name='vhost-vsock'/>
+ <flag name='mch'/>
<version>2009000</version>
<kvmVersion>0</kvmVersion>
- <microcodeVersion>320947</microcodeVersion>
+ <microcodeVersion>321313</microcodeVersion>
<package> (v2.9.0)</package>
<arch>x86_64</arch>
<hostCPU type='kvm' model='base' migratability='yes'>