Change the minimal SMM core size from 1MB to 256KB-4K.

Some platforms only enable 1MB, after reserve 1 page for SMM S3. There is at most 1MB-4KB for SMM core.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10158 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
jyao1 2010-03-03 02:04:37 +00:00
parent a17b7e9f33
commit 06b07ce37c
1 changed files with 2 additions and 2 deletions

View File

@ -920,10 +920,10 @@ SmmIplEntry (
} }
// //
// Find the largest SMRAM range between 1MB and 4GB that is at least 1MB in size // Find the largest SMRAM range between 1MB and 4GB that is at least 256KB - 4K in size
// //
mCurrentSmramRange = NULL; mCurrentSmramRange = NULL;
for (Index = 0, MaxSize = SIZE_1MB; Index < gSmmCorePrivate->SmramRangeCount; Index++) { for (Index = 0, MaxSize = SIZE_256KB - EFI_PAGE_SIZE; Index < gSmmCorePrivate->SmramRangeCount; Index++) {
if (gSmmCorePrivate->SmramRanges[Index].CpuStart >= BASE_1MB) { if (gSmmCorePrivate->SmramRanges[Index].CpuStart >= BASE_1MB) {
if ((gSmmCorePrivate->SmramRanges[Index].CpuStart + gSmmCorePrivate->SmramRanges[Index].PhysicalSize) <= BASE_4GB) { if ((gSmmCorePrivate->SmramRanges[Index].CpuStart + gSmmCorePrivate->SmramRanges[Index].PhysicalSize) <= BASE_4GB) {
if (gSmmCorePrivate->SmramRanges[Index].PhysicalSize >= MaxSize) { if (gSmmCorePrivate->SmramRanges[Index].PhysicalSize >= MaxSize) {