audk/Vlv2TbltDevicePkg
Michael Kinney c497dcc8e5 Vlv2TbltDevicePkg/PlatformInitPei: Better SMRAM size alignment
https://bugzilla.tianocore.org/show_bug.cgi?id=260

Update workaround to be more generic.

* Search for the largest region between 1MB and 4GB
* Find all adjacent regions to compute total size
* Minimum aligned size if 4KB
* Mark extended region to align size as EFI_ALLOCATED
* If an adjacent EFI_ALLOCATED region is present, then
  increase the size of the adjacent region.
* If adjacent EFI_ALLOCATED region is not present, then
  allocate a new HOB with one extra entry to describe
  the extended region to align the total size.  Preserve
  the last entry in the descriptor list for compatibility.

This is a workaround until the binary module that produces the
gEfiSmmPeiSmramMemoryReserveGuid HOB is updated

Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: David Wei <david.wei@intel.com>
Cc: Mang Guo <mang.guo@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
2016-12-07 08:57:06 -08:00
..
AcpiPlatform Vlv2TbltDevicePkg/AcpiPlatform: Amend the declaration of mGlobalNvsArea 2016-08-03 11:02:17 +08:00
Application/FirmwareUpdate Vlv2TbltDevicePkg/FirmwareUpdate: rebase to ARRAY_SIZE() 2016-10-27 11:15:20 +02:00
BootScriptSaveDxe Vlv2TbltDevicePkg: Fix typos in comments 2016-10-27 14:31:55 +08:00
Feature/Capsule Vlv2TbltDevicePkg/PlatformFlashAccessLib: Fix IA32 build issues 2016-11-29 08:17:50 -08:00
FspAzaliaConfigData Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
FspSupport Vlv2TbltDevicePkg: Fix typos in comments 2016-10-27 14:31:55 +08:00
FvInfoPei Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
FvbRuntimeDxe Vlv2TbltDevicePkg/FvbRuntimeDxe: Remove unused variables 2016-08-03 16:09:44 +08:00
Include Vlv2TbltDevicePkg: Fix typos in comments 2016-10-27 14:31:55 +08:00
IntelGopDepex Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
Library Vlv2TbltDevicePkg/PlatformBdsLib: Add DebugAgent Console 2016-12-05 13:48:14 -08:00
Logo Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
Metronome Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
MonoStatusCode Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
Override/IntelFrameworkModulePkg/Library/GenericBdsLib Vlv2TbltDevicePkg: Convert all .uni files to utf-8 2015-12-15 04:59:37 +00:00
PciPlatform Sync the branch changes to trunk. 2015-06-11 02:50:20 +00:00
PlatformCpuInfoDxe Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
PlatformDxe Vlv2TbltDevicePkg: Fix typos in comments 2016-10-27 14:31:55 +08:00
PlatformGopPolicy Vlv2TbltDevicePkg: Fix typos in comments 2016-10-27 14:31:55 +08:00
PlatformInfoDxe Sync the branch changes to trunk. 2015-06-11 02:50:20 +00:00
PlatformInitPei Vlv2TbltDevicePkg/PlatformInitPei: Better SMRAM size alignment 2016-12-07 08:57:06 -08:00
PlatformPei Vlv2TbltDevicePkg/PlatformPei: rebase to ARRAY_SIZE() 2016-10-27 11:15:21 +02:00
PlatformSetupDxe Vlv2TbltDevicePkg/PlatformSetupDxe: rebase to ARRAY_SIZE() 2016-10-27 11:15:21 +02:00
PlatformSmm Sync the branch changes to trunk. 2015-06-11 02:50:20 +00:00
PpmPolicy Vlv2TbltDevicePkg/PpmPolicy: Remove the unused variable 2016-08-03 11:08:34 +08:00
SaveMemoryConfig Vlv2TbltDevicePkg: Sync the branch changes to trunk. 2015-08-04 02:55:02 +00:00
SmBiosMiscDxe Vlv2TbltDevicePkg/SmBiosMiscDxe: rebase to ARRAY_SIZE() 2016-10-27 11:15:21 +02:00
SmmSwDispatch2OnSmmSwDispatchThunk Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
SmramSaveInfoHandlerSmm Fixed potential security issue introduced by SmramCpuNvs variable. 2015-06-23 07:22:23 +00:00
Stitch Vlv2TbltDevicePkg: Sync the branch changes to Trunk, 2015-11-13 02:38:08 +00:00
UiApp Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
VlvPlatformInitDxe Vlv2TbltDevicePkg/VlvPlatformInitDxe: Remove unused variables 2016-08-03 11:08:30 +08:00
Wpce791 Vlv2TbltDevicePkg/Wpce791: Remove the unused variable 2016-08-03 11:08:31 +08:00
BfmLib.exe Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
BiosIdD.env Vlv2TbltDevicePkg: Sync the branch changes to Trunk, 2015-11-13 02:38:08 +00:00
BiosIdR.env Vlv2TbltDevicePkg: Sync the branch changes to Trunk, 2015-11-13 02:38:08 +00:00
BiosIdx64D.env Vlv2TbltDevicePkg: Sync the branch changes to Trunk, 2015-11-13 02:38:08 +00:00
BiosIdx64R.env Vlv2TbltDevicePkg: Sync the branch changes to Trunk, 2015-11-13 02:38:08 +00:00
Build_IFWI.bat Vlv2TbltDevicePkg: Add /m flag for multi-processor build 2016-11-30 10:21:23 -08:00
Build_IFWI.sh Vlv2TbltDevicePkg: Sync the branch changes to Trunk, 2015-11-12 08:33:12 +00:00
Contributions.txt */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
FCE.exe Sync the branch changes to trunk. 2015-06-11 02:50:20 +00:00
GenBiosId Clean up GCC build. 2015-02-26 06:49:31 +00:00
GenBiosId.exe Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
License.txt Vlv2*Pkg: Add License.txt 2015-02-03 17:28:56 +00:00
PlatformCapsule.dsc Vlv2TbltDevicePkg/dsc/fdf: add capsule generation DSC/FDF. 2016-11-08 22:49:53 +08:00
PlatformCapsule.fdf Vlv2TbltDevicePkg/dsc/fdf: add capsule generation DSC/FDF. 2016-11-08 22:49:53 +08:00
PlatformCapsuleGcc.fdf Vlv2TbltDevicePkg/dsc/fdf: add capsule generation DSC/FDF. 2016-11-08 22:49:53 +08:00
PlatformPkg.dec Vlv2TbltDevicePkg/dec: Correct wrong default value. 2016-09-07 16:44:41 +08:00
PlatformPkg.fdf Vlv2TbltDevicePkg: Remove SMM binary modules from FDF 2016-11-29 08:17:50 -08:00
PlatformPkgConfig.dsc Vlv2TbltDevicePkg: Set CAPSULE_ENABLE to TRUE 2016-11-29 08:17:50 -08:00
PlatformPkgGcc.fdf Vlv2TbltDevicePkg: Remove SMM binary modules from FDF 2016-11-29 08:17:50 -08:00
PlatformPkgGccX64.dsc Vlv2TbltDevicePkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-06 09:18:51 +00:00
PlatformPkgIA32.dsc Vlv2TbltDevicePkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-06 09:18:51 +00:00
PlatformPkgX64.dsc Vlv2TbltDevicePkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-06 09:18:51 +00:00
bldX64.bat Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to 2015-01-12 09:37:20 +00:00
bld_vlv.bat Vlv2TbltDevicePkg: Add /m flag for multi-processor build 2016-11-30 10:21:23 -08:00
bld_vlv.sh Vlv2TbltDevicePkg: Amend the build script 2016-08-03 11:02:11 +08:00
cln.sh Clean up GCC build. 2015-02-26 06:49:31 +00:00