diff --git a/hw/tpm/tpm_emulator.c b/hw/tpm/tpm_emulator.c index a6763e8ea2..8fbe9ad74a 100644 --- a/hw/tpm/tpm_emulator.c +++ b/hw/tpm/tpm_emulator.c @@ -193,8 +193,7 @@ static void tpm_emulator_handle_request(TPMBackend *tb) error_report_err(err); } - tb->recv_data_callback(tb->tpm_state, tb->tpm_state->locty_number, - selftest_done); + tb->recv_data_callback(tb->tpm_state, selftest_done); } static int tpm_emulator_probe_caps(TPMEmulator *tpm_emu) diff --git a/hw/tpm/tpm_passthrough.c b/hw/tpm/tpm_passthrough.c index fed3d69799..0ae4596932 100644 --- a/hw/tpm/tpm_passthrough.c +++ b/hw/tpm/tpm_passthrough.c @@ -160,9 +160,7 @@ static void tpm_passthrough_handle_request(TPMBackend *tb) tb->tpm_state->locty_data, &selftest_done); - tb->recv_data_callback(tb->tpm_state, - tb->tpm_state->locty_number, - selftest_done); + tb->recv_data_callback(tb->tpm_state, selftest_done); } static void tpm_passthrough_reset(TPMBackend *tb) diff --git a/hw/tpm/tpm_tis.c b/hw/tpm/tpm_tis.c index c54dac32de..345a4fbee5 100644 --- a/hw/tpm/tpm_tis.c +++ b/hw/tpm/tpm_tis.c @@ -371,14 +371,13 @@ static void tpm_tis_receive_bh(void *opaque) /* * Callback from the TPM to indicate that the response was received. */ -static void tpm_tis_receive_cb(TPMState *s, uint8_t locty, +static void tpm_tis_receive_cb(TPMState *s, bool is_selftest_done) { TPMTISEmuState *tis = &s->s.tis; + uint8_t locty = s->locty_number; uint8_t l; - assert(s->locty_number == locty); - if (is_selftest_done) { for (l = 0; l < TPM_TIS_NUM_LOCALITIES; l++) { tis->loc[locty].sts |= TPM_TIS_STS_SELFTEST_DONE; diff --git a/include/sysemu/tpm_backend.h b/include/sysemu/tpm_backend.h index 7d7ebfc21d..9c83a512e1 100644 --- a/include/sysemu/tpm_backend.h +++ b/include/sysemu/tpm_backend.h @@ -30,7 +30,7 @@ typedef struct TPMBackendClass TPMBackendClass; typedef struct TPMBackend TPMBackend; -typedef void (TPMRecvDataCB)(TPMState *, uint8_t locty, bool selftest_done); +typedef void (TPMRecvDataCB)(TPMState *, bool selftest_done); struct TPMBackend { Object parent;