diff options
Diffstat (limited to 'tests/qtest/tpm-emu.h')
-rw-r--r-- | tests/qtest/tpm-emu.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/tests/qtest/tpm-emu.h b/tests/qtest/tpm-emu.h index 73f3bed0c4..c33d99af37 100644 --- a/tests/qtest/tpm-emu.h +++ b/tests/qtest/tpm-emu.h @@ -16,8 +16,13 @@ #define TPM_RC_FAILURE 0x101 #define TPM2_ST_NO_SESSIONS 0x8001 +#define TPM_FAIL 9 +#define TPM_TAG_RSP_COMMAND 0xc4 + #include "qemu/sockets.h" #include "io/channel.h" +#include "sysemu/tpm.h" +#include "libqos/libqtest.h" struct tpm_hdr { uint16_t tag; @@ -26,7 +31,14 @@ struct tpm_hdr { char buffer[]; } QEMU_PACKED; -typedef struct TestState { +#ifndef CONFIG_TPM +enum TPMVersion { + TPM_VERSION_1_2 = 1, + TPM_VERSION_2_0 = 2, +}; +#endif + +typedef struct TPMTestState { GMutex data_mutex; GCond data_cond; bool data_cond_signal; @@ -34,9 +46,11 @@ typedef struct TestState { QIOChannel *tpm_ioc; GThread *emu_tpm_thread; struct tpm_hdr *tpm_msg; -} TestState; + enum TPMVersion tpm_version; +} TPMTestState; -void tpm_emu_test_wait_cond(TestState *s); +void tpm_emu_test_wait_cond(TPMTestState *s); void *tpm_emu_ctrl_thread(void *data); +bool tpm_model_is_available(const char *args, const char *tpm_if); #endif /* TESTS_TPM_EMU_H */ |