C++程序  |  41行  |  725 B

// This file was extracted from the TCG Published
// Trusted Platform Module Library
// Part 3: Commands
// Family "2.0"
// Level 00 Revision 01.16
// October 30, 2014

#include "InternalRoutines.h"
LIB_EXPORT void
_TPM_Init(
   void
   )
{
   // Clear the failure mode flags
   g_inFailureMode = FALSE;
   g_forceFailureMode = FALSE;

   // Initialize the NvEnvironment.
   g_nvOk = NvPowerOn();

   // Initialize crypto engine
   CryptInitUnits();

   // Start clock
   TimePowerOn();

   // Set initialization state
   TPMInit();

   // Initialize object table
   ObjectStartup();

   // Set g_DRTMHandle as unassigned
   g_DRTMHandle = TPM_RH_UNASSIGNED;

   // No H-CRTM, yet.
   g_DrtmPreStartup = FALSE;

   return;
}