mirror of https://github.com/xemu-project/xemu.git
tpm: lookup the the TPM interface instead of TIS device
This will allow to introduce new devices implementing TPM. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Stefan Berger <stefanb@linux.vnet.ibm.com> Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
This commit is contained in:
parent
d36e7db1fb
commit
3dfd5a2a50
|
@ -208,7 +208,7 @@ static void acpi_get_misc_info(AcpiMiscInfo *info)
|
|||
}
|
||||
|
||||
info->has_hpet = hpet_find();
|
||||
info->tpm_version = tpm_get_version();
|
||||
info->tpm_version = tpm_get_version(tpm_find());
|
||||
info->pvpanic_port = pvpanic_port();
|
||||
info->applesmc_io_base = applesmc_port();
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ int tpm_config_parse(QemuOptsList *opts_list, const char *optarg);
|
|||
int tpm_init(void);
|
||||
void tpm_cleanup(void);
|
||||
|
||||
typedef enum TPMVersion {
|
||||
typedef enum TPMVersion {
|
||||
TPM_VERSION_UNSPEC = 0,
|
||||
TPM_VERSION_1_2 = 1,
|
||||
TPM_VERSION_2_0 = 2,
|
||||
|
@ -44,20 +44,25 @@ typedef struct TPMIfClass {
|
|||
void (*request_completed)(TPMIf *obj);
|
||||
} TPMIfClass;
|
||||
|
||||
TPMVersion tpm_tis_get_tpm_version(Object *obj);
|
||||
|
||||
#define TYPE_TPM_TIS "tpm-tis"
|
||||
|
||||
static inline TPMVersion tpm_get_version(void)
|
||||
/* returns NULL unless there is exactly one TPM device */
|
||||
static inline TPMIf *tpm_find(void)
|
||||
{
|
||||
#ifdef CONFIG_TPM
|
||||
Object *obj = object_resolve_path_type("", TYPE_TPM_TIS, NULL);
|
||||
Object *obj = object_resolve_path_type("", TYPE_TPM_IF, NULL);
|
||||
|
||||
if (obj) {
|
||||
return tpm_tis_get_tpm_version(obj);
|
||||
return TPM_IF(obj);
|
||||
}
|
||||
|
||||
TPMVersion tpm_tis_get_tpm_version(Object *obj);
|
||||
|
||||
static inline TPMVersion tpm_get_version(TPMIf *ti)
|
||||
{
|
||||
if (!ti) {
|
||||
return TPM_VERSION_UNSPEC;
|
||||
}
|
||||
#endif
|
||||
return TPM_VERSION_UNSPEC;
|
||||
|
||||
return tpm_tis_get_tpm_version(OBJECT(ti));
|
||||
}
|
||||
|
||||
#endif /* QEMU_TPM_H */
|
||||
|
|
Loading…
Reference in New Issue