From: Stefan Berger <stefanb@xxxxxxxxxxxxx> 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@xxxxxxxxxxxxx> --- src/conf/domain_conf.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 2f4528d336..749d135f96 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -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, @@ -13641,6 +13644,12 @@ virDomainTPMDefParseXML(virDomainXMLOptionPtr xmlopt, version); goto error; } + if (def->version == VIR_DOMAIN_TPM_VERSION_1_2 && + def->model == VIR_DOMAIN_TPM_MODEL_SPAPR) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", + _("TPM 1.2 is not supported with the SPAPR device model")); + goto error; + } } switch (def->type) { -- 2.17.1