diff --git a/IntelFsp2Pkg/Library/BaseCacheLib/CacheLib.c b/IntelFsp2Pkg/Library/BaseCacheLib/CacheLib.c index f879c268e7..a708dcbd56 100644 --- a/IntelFsp2Pkg/Library/BaseCacheLib/CacheLib.c +++ b/IntelFsp2Pkg/Library/BaseCacheLib/CacheLib.c @@ -328,7 +328,7 @@ ProgramFixedMtrr ( return EFI_DEVICE_ERROR; } - for ( ; ((ByteShift < 8) && (*Len >= mFixedMtrrTable[MsrNum].Length)); ByteShift++) { + for ( ; ((ByteShift < 8) && (*Len >= (UINT64)mFixedMtrrTable[MsrNum].Length)); ByteShift++) { OrMask |= LShiftU64 ((UINT64)MemoryCacheType, (UINT32)(ByteShift* 8)); ClearMask |= LShiftU64 ((UINT64)0xFF, (UINT32)(ByteShift * 8)); *Len -= mFixedMtrrTable[MsrNum].Length;