summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-03-24PXE driver bug fix.Fu Siyuan
A failed PXEv6 after a success PXEv4 will cause ASSERT. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com> Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17070 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-23NT32Pkg: Fix build errors from building secure boot with NT32 X64Cinnamon Shia
Root cause: The CryptoPkg\Library\IntrinsicLib needs override MSFT build option to remove /Oi and /GL, but it doesn’t work because of the build option override in Nt32Pkg.dsc. Solution: Remove /X in BaseTools/Conf/tools_def.template Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Cinnamon Shia <cinnamon.shia@hp.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17069 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-20MdePkg: BaseSynchronizationLib: fix Increment/Decrement retvals for ARMTyler Smith
The procedure call standard dictates that we move the result to r0 before returning. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Tyler Smith <tylers@hp.com> Reviewed-by: Eugene Cohen <eugene@hp.com> Reviewed-by: Leif Lindholm <leif.lindholm@arm.com> Reviewed-by: Ronald Cron <Ronald.Cron@arm.com> [lersek@redhat.com: cleaned up commit message] git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17068 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-20Updated Memory Error Record Per UEFI Specification 2.4a.Jeff Fan
Support up to 64GiB DIMMS and support for DDR4 and Chip Identification. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17067 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-19EdkCompatibilityPkg: Fix 32bit build failure.Star Zeng
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17066 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-19MdeModulePkg BootScriptExecutorDxe: Fix 32bit build failure.Star Zeng
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17065 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-18EdkCompatibilityPkg: Use ImageContext.ImageSize to allocate memory for PE imageStar Zeng
to handle the case PE file alignment is not same as PE section alignment. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17064 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-18MdeModulePkg BootScriptExecutorDxe: Use ImageContext.ImageSize to allocate ↵Star Zeng
memory for PE image to handle the case PE file alignment is not same as PE section alignment. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17063 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-18Fix GCC hang issue: Point should use directly assignment instead of ↵Fu Siyuan
IP4_COPY_ADDRESS. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com> Reviewed-by: Dong Eric <eric.dong@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17062 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-18IntelFrameworkModulePkg: Remove a duplicated hardcode stringHao Wu
Removed a hardcode UNICODE string in IsaSerialDxe. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Michael Kinney <Michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17061 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-17ShellPkg: update smbiosview for SMBIOS 3.0.Elvin Li
smbiosview can dump 64-bit entry point and table as long as SMBIOS 3.0 table exists in system configuration table. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Elvin Li <elvin.li@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17060 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-17SecurityPkg Variable: Reuse scratch data area(at the end of volatile ↵Star Zeng
variable store) as serialization runtime buffer to reduce SMRAM consumption for SMM variable driver. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Guo Dong <guo.dong@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17059 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-17SecurityPkg Variable: Update code in ProcessVariable () toStar Zeng
check IsDeleteAuthVariable () first and then check UserPhysicalPresent () to avoid the case below. PcdSetXX (a DynamicHii PCD) -> gRT->SetVariable () -> UserPhysicalPresent () -> PcdGetXX () Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17058 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-17MdePkg:Fix typo 'caculate' in MdePkg.Qiu Shumin
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Bruce Cran <bruce.cran@gmail.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17057 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-17ShellPkg: Fix typo in ShellPkg.Qiu Shumin
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com> Reviewed-by: Bruce Cran <bruce.cran@gmail.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17056 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-16OvmfPkg: include XHCI driverLaszlo Ersek
QEMU commit aa685789 ("xhci: generate a Transfer Event for each Transfer TRB with the IOC bit set") fixed an emulation problem in QEMU; we can now drive that host controller with edk2's XhciDxe. Include it in OvmfPkg, as XHCI emulation is reportedly more virtualization-friendly than EHCI, consuming less CPU. The driver can be tested with the following QEMU command line options: -device nec-usb-xhci -device usb-kbd This patch should not regress existing QEMU command lines (ie. trigger an ASSERT() in XhciDxe that fails on pre-aa685789 QEMU) because QEMU's "-device nec-usb-xhci" has never before resulted in USB devices that worked with edk2 firmware builds, hence users have never had a reason to add that option. Now that they learn about XHCI support in OVMF by reading this commit message, they (or their packagers) will also know to update qemu to aa685789 or later (in practice that means the upcoming 2.3 release), at least if they want to use '-device nec-usb-xhci' with edk2, for the first time ever. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Alexander Graf <agraf@suse.de> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17055 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-16MdeModulePkg: XhciDxe: list ARM and AARCH64 as valid architecturesLaszlo Ersek
"ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.dsc" references this driver. Cc: Feng Tian <feng.tian@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Feng Tian <feng.tian@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17054 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-16ArmVirtualizationPkg/ArmVirtualizationQemu: include XHCI driverLaszlo Ersek
The "virt" machine type of qemu-system-(arm|aarch64) had no PCIe support prior to qemu commit 4ab29b82 arm: Add PCIe host bridge in virt machine With that commit, the "virt" board acquired the capability to expose an XHCI controller. Using a USB keyboard as example, the command line options were -device nec-usb-xhci -device usb-kbd However, due to a slight XHCI emulation bug in QEMU -- dating back to several years earlier -- edk2's XHCI driver would encounter a failed ASSERT(). This emulation problem has been fixed in QEMU commit aa685789 xhci: generate a Transfer Event for each Transfer TRB with the IOC bit set and now edk2's XHCI driver works well on QEMU's "nec-usb-xhci" device. Let's enable the driver in ArmVirtualizationQemu, as XHCI emulation is reportedly more virtualization-friendly than EHCI, consuming less CPU. (ArmVirtualizationXen is not modified because it includes no USB-related drivers at all.) This patch should not regress existing QEMU command lines (ie. expose the failed ASSERT()) because QEMU's "-device nec-usb-xhci" has never before resulted in USB devices that worked with edk2 firmware builds, hence users have never had a reason to add that option. Now that they learn about XHCI support in ArmVirtualizationQemu by reading this commit message, they (or their packagers) will also know to update qemu to aa685789 or later (in practice that means the upcoming 2.3 release), at least if they want to use '-device nec-usb-xhci' with edk2, for the first time ever. Cc: Leif Lindholm <Leif.Lindholm@arm.com> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Alexander Graf <agraf@suse.de> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Leif Lindholm <leif.lindholm@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17053 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-16ArmVirtualizationPkg: build UEFI shell from sourceLaszlo Ersek
Including a prebuilt shell executable in the firmware binary is suboptimal practice, especially given that the source code of the UEFI shell resides in the same edk2 tree. Benefits of building the shell from source are partly technical (a developer patching the shell can actually see the results), partly ideological (the nominally built-from-source firmware is actually built from source). "Security" might be worth a mention too. The stanza for the [Components.common] section of "ArmVirtualization.dsc.inc" originates from under OvmfPkg. Cc: Leif Lindholm <Leif.Lindholm@arm.com> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Leif Lindholm <leif.lindholm@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17052 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-16MdeModulePkg: Add SMBIOS 64-bit support for SMBIOS 3.0.Elvin Li
Add SMBIOS 64-bit entry point and 64-bit table support for SMBIOS 3.0. Introduce PcdSmbiosEntryPointProvideMethod to produce 32-bit or 64-bit SMBIOS table. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Elvin Li <elvin.li@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17051 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-16MdePkg: Add SMBIOS 3.0 configuration table Guid.Elvin Li
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Elvin Li <elvin.li@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17050 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-16NetworkPkg: Fix typo.Shumin Qiu
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Shumin Qiu <shumin.qiu@intel.com> Reviewed-by: Ting Ye <ting.ye@intel.com> Reviewed-by: Siyuan Fu <siyuan.fu@intel.com> Reviewed-by: Mudusuru Giri P <giri.p.mudusuru@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17049 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-13SecurityPkg Variable: Initialize Status in ProcessVariable().Star Zeng
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17048 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-13SecurityPkg: Fix typo.Shumin Qiu
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Shumin Qiu <shumin.qiu@intel.com> Reviewed-by: Guo Dong <guo.dong@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17047 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-13SourceLevelDebugPkg: Fix typo.Shumin Qiu
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Shumin Qiu <shumin.qiu@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17046 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-13MdeModulePkg: Fix typo.Shumin Qiu
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Shumin Qiu <shumin.qiu@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17045 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-13IntelFrameworkModulePkg: Fix typo.Shumin Qiu
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Shumin Qiu <shumin.qiu@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17044 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-13ShellPkg: Add type cast to avoid build failure in VS2005.Qiu Shumin
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17043 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-13SecurityPkg Variable: Allow the delete operation of common auth variable at ↵Star Zeng
user physical presence. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17042 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-12MdeModulePkg/Usb: Remove unnecessary direction restriction on ↵Feng Tian
UsbHc2.SyncInterruptTransfer(). The restriction of UsbHc2.SyncInterruptTransfer() on interrupt transfer direction is removed. This interface could support Interrupt IN/OUT now. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Feng Tian <feng.tian@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17041 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-11MdeModulePkg: Enhance the comments of PcdMaxUserNvVariableSpaceSize.Star Zeng
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17040 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-11OptionRomPkg: Update UndiRuntimeDxe driver. Liming Gao
Change the Notify from ExitBootService to ReadyToBoot. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17038 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-10MdeModulePkg: Add function comment for 'GetPoolIndexFromSize'.Shumin Qiu
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Shumin Qiu <shumin.qiu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17037 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-10Add patch-able PCD to support binary modification of MRC module. David Wei
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: David Wei <david.wei@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17036 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-10Sync the branch changes to trunk. Tim He
Increase the BiosID VERSION_MINOR to 02. Modified some PCDs as PcdsDynamicEx, and modified FSP support API. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Tim He <tim.he@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17035 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-10Add code to identify D0 stepping ValleyView SoC. Shifei Lu
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Shifei Lu <shifeix.a.lu@intel.com> Reviewed-by: David Wei <david.wei@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17034 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-10Update build script to include new SEC.David Wei
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: David Wei <david.wei@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17033 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-09ShellPkg: Help and Error Messages UpdateTapan Shah
Updates to various profile commands help and error message output with better wordings. Fix few inconsistency issues found in error messages across various profile commands. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Tapan Shah <tapandshah@hp.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17032 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-09SecurityPkg Variable: Keep the behavior of Variable Dxe and SMM drivers ↵Star Zeng
consistent to return EFI_NOT_FOUND when a specified variable doesn't exist and Data parameter is NULL but DataSize parameter is valid in GetVariable() invocation. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17031 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-09MdeModulePkg Variable: Keep the behavior of Variable Dxe and SMM drivers ↵Star Zeng
consistent to return EFI_NOT_FOUND when a specified variable doesn't exist and Data parameter is NULL but DataSize parameter is valid in GetVariable() invocation. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17030 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-09UefiCpuPkg/MpSerivce: add volatile qualifiersChen Fan
For avoid the compiler optimizing the code, we let Parameter and Procedure in CpuData volatile. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17024 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-09UefiCpuPkg/MpService: Put APs to sleep when not busy.Chen Fan
Add a new sleeping state for APs, when no procedure execution, put AP to sleep. when need to execute procedure, only need to wake up this AP by sent SIPI. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17023 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-09UefiCpuPkg/MpService: put AP to busy state when executionChen Fan
CpuState should follow the process? Idle -> Ready -> Busy -> Finished ^ | | | + - - - - - - - - - - - - + Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17022 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-09UefiCpuPkg/MpService: fix trivial typo in cpu stateChen Fan
CpuStateBuzy => CpuStateBusy Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17021 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-06Set network boot option to the default last priority.Mang Guo
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Mang Guo <mang.guo@intel.com> Reviewed-by: David Wei <david.wei@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17018 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-06MdeModulePkg: use 64 KB granularity for runtime allocations on AArch64Ard Biesheuvel
On AArch64, the OS can choose to run with a page size of 64 KB, making it cumbersome to deal with UEFI reserved memory regions whose boundaries are not 64 KB aligned. So increase the allocation granularity for runtime regions to 64 KB. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17016 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-06MdeModulePkg: serve allocations from higher-up bins if current bin is emptyArd Biesheuvel
This patch changes the allocation logic for the pool allocator to only allocate additional pages if the requested allocation cannot be fulfilled from the current bin or any of the larger ones. If there are larger blocks available, they will be used to serve the allocation, and the remainder will be carved up into smaller blocks using the existing carving up logic. Note that all pool sizes are a multiple of the smallest pool size, so it is guaranteed that the remainder will be carved up without spilling. Due to the exponential nature of the pool sizes, the amount of work is logarithmic in the size of the available block. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17015 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-06MdeModulePkg: carve pool pages into the largest chunks possibleArd Biesheuvel
In preparation of the next patch, that serves allocations from higher-up bins if the current bin is depleted, this patch updates the carving up strategy to populate the largest bins first. To ensure that there will always be an allocation of the appropriate size made, the current allocation request is served first from the newly allocated memory region. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17014 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-06MdeModulePkg: use index to traverse free pool pagesArd Biesheuvel
In preparation of making the pool code capable of serving allocations from higher-up bins, update the free path to traverse a candidate page by following the index of POOL_FREE header instead of duplicating the carving logic that was used at page allocation time. This allows chunks to be split into smaller ones, where one can be returned to serve the allocation, and the other stored in a smaller bin for later use. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17013 6f19259b-4bc3-4df7-8a09-765794883524
2015-03-06MdeModulePkg: improve scalability of memory poolsArd Biesheuvel
The existing linear mapping between allocation size and pool index does not scale when moving to a 64 KB granularity or beyond. With a granularity of 64 KB, 2048 (!) bins will be created for each memory type, each differing 32 bytes in size with the next one. Instead, introduce an exponential scheme where each bin size is the sum of the two previous ones. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17012 6f19259b-4bc3-4df7-8a09-765794883524