The size of platform memory above 1M is measured in kilobytes.

This patch fixes truncation of this value. Actually 0 Mb memory size was set by reason of overflow of 16 bit word caused by wrong value used.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Mike Maslenkin <mihailm@parallels.com>
Reviewed-by: Elvin Li <elvin.li@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15318 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Mike Maslenkin 2014-03-05 08:45:13 +00:00 committed by li-elvin
parent 81f2915669
commit de2eccc46a
1 changed files with 2 additions and 2 deletions

View File

@ -1,6 +1,6 @@
/** @file
Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions
@ -2101,7 +2101,7 @@ LegacyBiosCompleteStandardCmosBeforeBoot (
//
// redo memory size since it can change
//
Size = 15 * SIZE_1MB;
Size = (15 * SIZE_1MB) >> 10;
if (Private->IntThunk->EfiToLegacy16InitTable.OsMemoryAbove1Mb < (15 * SIZE_1MB)) {
Size = Private->IntThunk->EfiToLegacy16InitTable.OsMemoryAbove1Mb >> 10;
}