diff -r 966a6d3b7408 tools/ioemu/hw/tpm_tis.c --- a/tools/ioemu/hw/tpm_tis.c Fri Dec 14 11:50:24 2007 +0000 +++ b/tools/ioemu/hw/tpm_tis.c Thu Dec 20 11:56:24 2007 +0900 @@ -904,6 +904,13 @@ void tpm_tis_init(SetIRQFunc *set_irq, v memset(s->buffer.buf,0,sizeof(s->buffer.buf)); register_savevm("tpm-tis", 0, 1, tpm_save, tpm_load, s); + + int ctr = 0; + while(!IS_COMM_WITH_VTPM(s) && ctr < 5){ + open_vtpm_channel(s); + ctr++; + sleep(1); + } } /****************************************************************************/