| // 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; |
| } |