]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFspPkg/Library/BaseCacheLib/CacheLib.c
Fix an issue on FixedMtreProgramming - AND/OR mask incorrect.
[mirror_edk2.git] / IntelFspPkg / Library / BaseCacheLib / CacheLib.c
index 5c77962393c0248d22d9231754b1afa69f69adc6..40d404dd69e70660868ae3fa55bb687d4ae1e799 100644 (file)
@@ -381,7 +381,7 @@ ProgramFixedMtrr (
     *Len -= mFixedMtrrTable[MsrNum].Length;\r
     *Base += mFixedMtrrTable[MsrNum].Length;\r
   }\r
-  TempQword = AsmReadMsr64 (mFixedMtrrTable[MsrNum].Msr) & (~ClearMask | OrMask);\r
+  TempQword = (AsmReadMsr64 (mFixedMtrrTable[MsrNum].Msr) & (~ClearMask)) | OrMask;\r
   AsmWriteMsr64 (mFixedMtrrTable[MsrNum].Msr, TempQword);\r
 \r
   return EFI_SUCCESS;\r