On 7/8/20 9:38 AM, Peter Krempa wrote:
On Wed, Jul 08, 2020 at 09:30:50 -0400, Stefan Berger wrote:
> From: Stefan Berger <stefanb(a)linux.ibm.com>
>
> The firmware (SLOF) on QEMU for ppc64 does not support TPM 1.2, so
> prevent the choice of TPM 1.2 when the SPAPR device model is chosen
> and use a default of '2.0' (TPM 2) for the emulator.
>
> Signed-off-by: Stefan Berger <stefanb(a)linux.ibm.com>
> ---
> src/conf/domain_conf.c | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
This kind of logic doesn't belong into the XML parser but rather to the
post parse callback/infrastructure where defaults should be filled in.
@ -13633,7 +13633,10 @@ virDomainTPMDefParseXML(virDomainXMLOptionPtr xmlopt,
version = virXMLPropString(backends[0], "version");
if (!version) {
- def->version = VIR_DOMAIN_TPM_VERSION_DEFAULT;
+ if (def->model == VIR_DOMAIN_TPM_MODEL_SPAPR)
+ def->version = VIR_DOMAIN_TPM_VERSION_2_0;
+ else
+ def->version = VIR_DOMAIN_TPM_VERSION_DEFAULT;
} else {
if ((def->version = virDomainTPMVersionTypeFromString(version)) < 0) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
In that case we
wouldn't be able to choose a different default for SPAPR
since it's already been filled in with the default for all the other
platforms. We can do the check for the unsupported part there, though.