]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UefiCpuPkg/CpuDxe/CpuDxe.c
Fix Beagle references without using svn mv.
[mirror_edk2.git] / UefiCpuPkg / CpuDxe / CpuDxe.c
index 424bc312ea6b96e403f78573796e7c2d3821dbe2..e3b21d8463b2f4d77f647fbae624ae787baadfe6 100644 (file)
@@ -590,6 +590,10 @@ CpuSetMemoryAttributes (
   RETURN_STATUS             Status;\r
   MTRR_MEMORY_CACHE_TYPE    CacheType;\r
 \r
+  if (!IsMtrrSupported ()) {\r
+    return EFI_UNSUPPORTED;\r
+  }\r
+\r
   DEBUG((EFI_D_ERROR, "CpuAp: SetMemorySpaceAttributes(BA=%08x, Len=%08x, Attr=%08x)\n", BaseAddress, Length, Attributes));\r
 \r
   //\r
@@ -856,7 +860,12 @@ RefreshGcdMemoryAttributes (
   MTRR_FIXED_SETTINGS                 MtrrFixedSettings;\r
   UINT32                              FirmwareVariableMtrrCount;\r
 \r
+  if (!IsMtrrSupported ()) {\r
+    return;\r
+  }\r
+\r
   FirmwareVariableMtrrCount = GetFirmwareVariableMtrrCount ();\r
+  ASSERT (FirmwareVariableMtrrCount <= MTRR_NUMBER_OF_VARIABLE_MTRR);\r
 \r
 //  mIsFlushingGCD = TRUE;\r
   mIsFlushingGCD = FALSE;\r
@@ -1011,7 +1020,6 @@ InitInterruptDescriptorTable (
   IA32_DESCRIPTOR *IdtPtr;\r
   UINTN           Index;\r
   UINTN           CurrentHandler;\r
-  BOOLEAN         InterruptState;\r
 \r
   SetMem (ExternalVectorTable, sizeof(ExternalVectorTable), 0);\r
 \r
@@ -1039,18 +1047,8 @@ InitInterruptDescriptorTable (
   IdtPtr->Base = (UINT32)(((UINTN)(VOID*) gIdtTable) & (BASE_4GB-1));\r
   IdtPtr->Limit = sizeof (gIdtTable) - 1;\r
 \r
-  //\r
-  // Disable interrupts and save the current interrupt state\r
-  //\r
-  InterruptState = SaveAndDisableInterrupts ();\r
-\r
   AsmWriteIdtr (IdtPtr);\r
 \r
-  //\r
-  // Restore the interrupt state\r
-  //\r
-  SetInterruptState (InterruptState);\r
-\r
   FreePool (IdtPtrAlignmentBuffer);\r
 \r
   //\r