From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43641) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yro0u-0001WY-LU for qemu-devel@nongnu.org; Mon, 11 May 2015 09:44:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Yro0s-0002yn-6Y for qemu-devel@nongnu.org; Mon, 11 May 2015 09:44:56 -0400 Received: from mga02.intel.com ([134.134.136.20]:32944) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yro0s-0002yG-1Z for qemu-devel@nongnu.org; Mon, 11 May 2015 09:44:54 -0400 From: Quan Xu Date: Mon, 11 May 2015 04:43:14 -0400 Message-Id: <1431333794-28761-7-git-send-email-quan.xu@intel.com> In-Reply-To: <1431333794-28761-1-git-send-email-quan.xu@intel.com> References: <1431333794-28761-1-git-send-email-quan.xu@intel.com> Subject: [Qemu-devel] [PATCH v7 6/6] Qemu-Xen-vTPM: QEMU machine class is initialized before tpm_init() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: stefano.stabellini@eu.citrix.com, stefanb@linux.vnet.ibm.com, qemu-devel@nongnu.org Cc: wei.liu2@citrix.com, dgdegra@tycho.nsa.gov, Quan Xu , xen-devel@lists.xen.org make sure QEMU machine class is initialized and QEMU has registered Xen stubdom vTPM driver when call tpm_init() Signed-off-by: Quan Xu Reviewed-by: Stefan Berger --- vl.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/vl.c b/vl.c index 74c2681..7bc87f1 100644 --- a/vl.c +++ b/vl.c @@ -4131,12 +4131,6 @@ int main(int argc, char **argv, char **envp) exit(1); } -#ifdef CONFIG_TPM - if (tpm_init() < 0) { - exit(1); - } -#endif - /* init the bluetooth world */ if (foreach_device_config(DEV_BT, bt_parse)) exit(1); @@ -4239,6 +4233,17 @@ int main(int argc, char **argv, char **envp) exit(1); } + /* + * For compatible with Xen stubdom vTPM driver, make + * sure QEMU machine class is initialized and QEMU has + * registered Xen stubdom vTPM driver. + */ +#ifdef CONFIG_TPM + if (tpm_init() < 0) { + exit(1); + } +#endif + /* init generic devices */ if (qemu_opts_foreach(qemu_find_opts("device"), device_init_func, NULL, 1) != 0) exit(1); -- 1.8.3.2