libvirt/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
Ján Tomko ad3f33a992 qemu: add external backend for tpm
Introduce a new backend type 'external' for connecting to a swtpm daemon
not managed by libvirtd.

Mostly in one commit, thanks to -Wswitch and the way we generate
capabilities.

https://bugzilla.redhat.com/show_bug.cgi?id=2063723

Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2022-12-19 10:33:20 +01:00

275 lines
9.7 KiB
XML

<domainCapabilities>
<path>/usr/bin/qemu-system-x86_64</path>
<domain>qemu</domain>
<machine>pc-i440fx-7.0</machine>
<arch>x86_64</arch>
<vcpu max='255'/>
<iothreads supported='yes'/>
<os supported='yes'>
<enum name='firmware'>
<value>bios</value>
<value>efi</value>
</enum>
<loader supported='yes'>
<value>/usr/share/AAVMF/AAVMF_CODE.fd</value>
<value>/usr/share/AAVMF/AAVMF32_CODE.fd</value>
<value>/usr/share/OVMF/OVMF_CODE.fd</value>
<enum name='type'>
<value>rom</value>
<value>pflash</value>
</enum>
<enum name='readonly'>
<value>yes</value>
<value>no</value>
</enum>
<enum name='secure'>
<value>no</value>
</enum>
</loader>
</os>
<cpu>
<mode name='host-passthrough' supported='no'/>
<mode name='maximum' supported='yes'>
<enum name='maximumMigratable'>
<value>on</value>
<value>off</value>
</enum>
</mode>
<mode name='host-model' supported='yes'>
<model fallback='forbid'>Opteron_G3</model>
<vendor>AMD</vendor>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='pclmuldq'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='sse4.2'/>
<feature policy='require' name='movbe'/>
<feature policy='require' name='aes'/>
<feature policy='require' name='xsave'/>
<feature policy='require' name='rdrand'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='arat'/>
<feature policy='require' name='fsgsbase'/>
<feature policy='require' name='bmi1'/>
<feature policy='require' name='smep'/>
<feature policy='require' name='bmi2'/>
<feature policy='require' name='erms'/>
<feature policy='require' name='mpx'/>
<feature policy='require' name='adx'/>
<feature policy='require' name='smap'/>
<feature policy='require' name='pcommit'/>
<feature policy='require' name='clflushopt'/>
<feature policy='require' name='clwb'/>
<feature policy='require' name='umip'/>
<feature policy='require' name='pku'/>
<feature policy='require' name='la57'/>
<feature policy='require' name='pks'/>
<feature policy='require' name='xsaveopt'/>
<feature policy='require' name='xgetbv1'/>
<feature policy='require' name='mmxext'/>
<feature policy='require' name='pdpe1gb'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='3dnow'/>
<feature policy='require' name='cr8legacy'/>
<feature policy='require' name='npt'/>
<feature policy='require' name='vgif'/>
<feature policy='require' name='svme-addr-chk'/>
<feature policy='disable' name='misalignsse'/>
</mode>
<mode name='custom' supported='yes'>
<model usable='yes' vendor='unknown'>qemu64</model>
<model usable='yes' vendor='unknown'>qemu32</model>
<model usable='no' vendor='AMD'>phenom</model>
<model usable='yes' vendor='unknown'>pentium3</model>
<model usable='yes' vendor='unknown'>pentium2</model>
<model usable='yes' vendor='unknown'>pentium</model>
<model usable='yes' vendor='Intel'>n270</model>
<model usable='yes' vendor='unknown'>kvm64</model>
<model usable='yes' vendor='unknown'>kvm32</model>
<model usable='yes' vendor='Intel'>coreduo</model>
<model usable='yes' vendor='Intel'>core2duo</model>
<model usable='yes' vendor='AMD'>athlon</model>
<model usable='no' vendor='Intel'>Westmere-IBRS</model>
<model usable='yes' vendor='Intel'>Westmere</model>
<model usable='no' vendor='Intel'>Snowridge</model>
<model usable='no' vendor='Intel'>Skylake-Server-noTSX-IBRS</model>
<model usable='no' vendor='Intel'>Skylake-Server-IBRS</model>
<model usable='no' vendor='Intel'>Skylake-Server</model>
<model usable='no' vendor='Intel'>Skylake-Client-noTSX-IBRS</model>
<model usable='no' vendor='Intel'>Skylake-Client-IBRS</model>
<model usable='no' vendor='Intel'>Skylake-Client</model>
<model usable='no' vendor='Intel'>SandyBridge-IBRS</model>
<model usable='no' vendor='Intel'>SandyBridge</model>
<model usable='yes' vendor='Intel'>Penryn</model>
<model usable='no' vendor='AMD'>Opteron_G5</model>
<model usable='no' vendor='AMD'>Opteron_G4</model>
<model usable='no' vendor='AMD'>Opteron_G3</model>
<model usable='yes' vendor='AMD'>Opteron_G2</model>
<model usable='yes' vendor='AMD'>Opteron_G1</model>
<model usable='no' vendor='Intel'>Nehalem-IBRS</model>
<model usable='yes' vendor='Intel'>Nehalem</model>
<model usable='no' vendor='Intel'>IvyBridge-IBRS</model>
<model usable='no' vendor='Intel'>IvyBridge</model>
<model usable='no' vendor='Intel'>Icelake-Server-noTSX</model>
<model usable='no' vendor='Intel'>Icelake-Server</model>
<model usable='no' deprecated='yes' vendor='Intel'>Icelake-Client-noTSX</model>
<model usable='no' deprecated='yes' vendor='Intel'>Icelake-Client</model>
<model usable='no' vendor='Intel'>Haswell-noTSX-IBRS</model>
<model usable='no' vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC</model>
<model usable='no' vendor='Hygon'>Dhyana</model>
<model usable='no' vendor='Intel'>Cooperlake</model>
<model usable='yes' vendor='Intel'>Conroe</model>
<model usable='no' vendor='Intel'>Cascadelake-Server-noTSX</model>
<model usable='no' vendor='Intel'>Cascadelake-Server</model>
<model usable='no' vendor='Intel'>Broadwell-noTSX-IBRS</model>
<model usable='no' vendor='Intel'>Broadwell-noTSX</model>
<model usable='no' vendor='Intel'>Broadwell-IBRS</model>
<model usable='no' vendor='Intel'>Broadwell</model>
<model usable='yes' vendor='unknown'>486</model>
</mode>
</cpu>
<memoryBacking supported='yes'>
<enum name='sourceType'>
<value>file</value>
<value>anonymous</value>
<value>memfd</value>
</enum>
</memoryBacking>
<devices>
<disk supported='yes'>
<enum name='diskDevice'>
<value>disk</value>
<value>cdrom</value>
<value>floppy</value>
<value>lun</value>
</enum>
<enum name='bus'>
<value>ide</value>
<value>fdc</value>
<value>scsi</value>
<value>virtio</value>
<value>usb</value>
<value>sata</value>
</enum>
<enum name='model'>
<value>virtio</value>
<value>virtio-transitional</value>
<value>virtio-non-transitional</value>
</enum>
</disk>
<graphics supported='yes'>
<enum name='type'>
<value>sdl</value>
<value>vnc</value>
<value>spice</value>
<value>egl-headless</value>
<value>dbus</value>
</enum>
</graphics>
<video supported='yes'>
<enum name='modelType'>
<value>vga</value>
<value>cirrus</value>
<value>vmvga</value>
<value>qxl</value>
<value>virtio</value>
<value>none</value>
<value>bochs</value>
<value>ramfb</value>
</enum>
</video>
<hostdev supported='yes'>
<enum name='mode'>
<value>subsystem</value>
</enum>
<enum name='startupPolicy'>
<value>default</value>
<value>mandatory</value>
<value>requisite</value>
<value>optional</value>
</enum>
<enum name='subsysType'>
<value>usb</value>
<value>pci</value>
<value>scsi</value>
</enum>
<enum name='capsType'/>
<enum name='pciBackend'>
<value>default</value>
<value>vfio</value>
</enum>
</hostdev>
<rng supported='yes'>
<enum name='model'>
<value>virtio</value>
<value>virtio-transitional</value>
<value>virtio-non-transitional</value>
</enum>
<enum name='backendModel'>
<value>random</value>
<value>egd</value>
<value>builtin</value>
</enum>
</rng>
<filesystem supported='yes'>
<enum name='driverType'>
<value>path</value>
<value>handle</value>
<value>virtiofs</value>
</enum>
</filesystem>
<tpm supported='yes'>
<enum name='model'>
<value>tpm-tis</value>
<value>tpm-crb</value>
</enum>
<enum name='backendModel'>
<value>passthrough</value>
<value>emulator</value>
<value>external</value>
</enum>
<enum name='backendVersion'>
<value>2.0</value>
</enum>
</tpm>
<redirdev supported='yes'>
<enum name='bus'>
<value>usb</value>
</enum>
</redirdev>
<channel supported='yes'>
<enum name='type'>
<value>pty</value>
<value>unix</value>
<value>spicevmc</value>
</enum>
</channel>
</devices>
<features>
<gic supported='no'/>
<vmcoreinfo supported='yes'/>
<genid supported='yes'/>
<backingStoreInput supported='yes'/>
<backup supported='yes'/>
<sev supported='no'/>
<sgx supported='yes'>
<flc>no</flc>
<sgx1>yes</sgx1>
<sgx2>no</sgx2>
<section_size unit='KiB'>524288</section_size>
<sections>
<section node='0' size='262144' unit='KiB'/>
<section node='1' size='262144' unit='KiB'/>
</sections>
</sgx>
</features>
</domainCapabilities>