/* Internal worker function that is called to complete CPU initialization at the end of SmmCpuFeaturesInitializeProcessor().  */
VOID FinishSmmCpuFeaturesInitializeProcessor(VOID)
/* Internal worker function that is called to complete CPU initialization at the end of SmmCpuFeaturesInitializeProcessor().  */
VOID FinishSmmCpuFeaturesInitializeProcessor(VOID)
{
  MSR_IA32_SMM_MONITOR_CTL_REGISTER  SmmMonitorCtl;
  if (mMsegBase > 0) {
    SmmMonitorCtl.Uint64        = 0;
    SmmMonitorCtl.Bits.MsegBase = (UINT32)mMsegBase >> 12;
    SmmMonitorCtl.Bits.Valid    = 1;
    AsmWriteMsr64 (MSR_IA32_SMM_MONITOR_CTL, SmmMonitorCtl.Uint64);
  }
}