summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-11-17UefiCpuPkg: Add SmmCpuFeaturesLibMichael Kinney
Add SmmCpuFeaturesLib that provides CPU specific functions that are used to initialize SMM and process SMIs. A functional implementation of this library class is provided that is based on the Intel(R) 64 and IA-32 Architectures Software Developer's Manual (Sync patch r18638 from main trunk.) [jeff.fan@intel.com: Fix code style issues reported by ECC] Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18833 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-17UefiCpuPkg: Add SecCore module and supporting library class and PCDMichael Kinney
Add declaration of PlatformSecLib library class to DEC file Add declaration of PcdPeiTemporaryRamStackSize PCD to DEC/UNI file Add build of PlatformSecLibNull to DSC file Add build of SecCore to DSC file (Sync patch r18637 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18832 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-17UefiCpuPkg: Add SecCore moduleMichael Kinney
Add SecCore module that uses the PlatformSecLib class for platform specific actions. The SecCore module also uses a new PCD to configure the size of the stack used in the SEC phase. If the stack size PCD is set to 0, the stack is configured to use half of the available temporary RAM. (Sync patch r18636 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18831 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-17UefiCpuPkg: Add PlatformSecLibMichael Kinney
Add PlatformSecLib class and PlatformSecLibNull instance that is used by the SecCore. PlatformSecLibNull should not be used in a platform build. Instead, it should be used as a template for implementing a platform specific instance of the PlatformSecLib library class. (Sync patch r18635 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18830 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-17UefiCpuPkg: Add SMM Communication PPI and Handler ModulesMichael Kinney
Add modules that produce the SMM Communications PPI and install a SW SMI handler for SMM Communication requests (Sync patch r18634 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18829 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-17UefiCpuPkg: Add Cpuid.h include files for CPUID related definesMichael Kinney
Move CPUID related defines from LocalApic.h to Cpuid.h Update LocalApicLib instances to include Cpuid.h Update CpuMpPei module to include Cpuid.h (Sync patch r18633 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18828 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-17UefiCpuPkg: CpuDxe: broadcast MTRR changes to APsLaszlo Ersek
The Quark_EDKII_v1.1.0/IA32FamilyCpuBasePkg/CpuArchDxe driver applies any MTRR changes to APs, if the EFI_MP_SERVICES_PROTOCOL is available. We should do the same. Additionally, the broadcast should occur at MP startup as well, not only when MTRR settings are changed. The inspiration is taken from Quark_EDKII_v1.1.0/IA32FamilyCpuBasePkg/CpuMpDxe/ (see the EarlyMpInit() function and its call sites in "ProcessorConfig.c"). (Sync patch r18632 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18827 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-17UefiCpuPkg: CpuDxe: Wait for APs to enter idle loopMichael Kinney
Address a race condition in first call to StartupAllAPs() with SingleThread set to TRUE in the MP initialization. If the APs have not entered their idle loop before StartupAllAPs() is called, then some of the APs will be in an unexpected state, and StartupAllAPs() will hang. This is the hang condition that is only seen when SingleThread parameter is set to TRUE and StartupAllAPs() is called very shortly after mAPsAlreadyInitFinished is set to TRUE that releases the APs to complete their initialization. An internal function has been added to check if all APs are in the sleeping state in their idle loop. On the first call to StartupAllAPs(), this internal function is used in a loop to make sure the APs are in a state that is compatible with the use of StartupAllAPs(). PcdCpuApInitTimeOutInMicroSeconds is used as the maximum wait time for the APs to enter their idle loop. If all APs have not entered their idle loop within the timeout, then an ASSERT() is generated. (Sync patch r18631 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Cc: Jeff Fan <jeff.fan@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18826 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-17UefiCpuPkg: CpuDxe: Use PCD for AP detection timeoutMichael Kinney
Use PcdCpuApInitTimeOutInMicroSeconds instead of hardcoded 100ms for the time to wait for all APs to respond to first INIT SIPI SIPI wake request. (Sync patch r18630 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Cc: Jeff Fan <jeff.fan@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18825 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-17UefiCpuPkg: Update CPU MP drivers to support single CPU configurationMichael Kinney
Only perform AP detection if PcdCpuMaxLogicalProcessorNumber > 1 Only free AP related structures of they were allocated (Sync patch r18629 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18824 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg: Fix a PciBusDxe hot plug bugRuiyu Ni
For a hot plug bridge with device attached, PciBusDxe driver reserves the resources which equal to the total amount of padding resource returned from HotPlug->GetResourcePadding() and the actual occupied resource by the attached device. The behavior is incorrect. Correct behavior is to reserve the bigger one between the padding resource and the actual occupied resource. (Sync patch r18719 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18822 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg: Fix a PCI resource dumping bug in PciBusDxe driverRuiyu Ni
The resource dumping logic contains a bug which cannot dump the resource for hot plug controller correctly. The patch fixes this bug. (Sync patch r18718 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18821 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg SmbiosMeasurementDxe: NULL check to String from GetSmbiosStringByIdStar Zeng
When StringId is not 0, String returned from GetSmbiosStringById is expected to non-NULL. Add ASSERT (String != NULL); to ensure this. (Sync patch r18713 from main trunk.) Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Shumin Qiu <shumin.qiu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Shumin Qiu <shumin.qiu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18820 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16NetworkPkg: HttpDxe sometimes free a pointer twiceNagaraj Hegde
In EfiHttpRequest, HostName was getting freed twice whenever HttpTransmitTcp4 failed. Moved FreePool (HostName) after HttpTransmitTcp4 call to avoid a double free. (Sync patch r18709 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Nagaraj Hegde <nagaraj-p.hegde@hpe.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Ye Ting <ting.ye@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18819 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg SmbiosMeasurementDxe: Correct the commentsStar Zeng
1. Correct the return comments of entrypoint function. 2. Add parameters' comments for MeasureSmbiosTable(). 3. Correct the Protocols and Guids usage comments in SmbiosMeasurementDxe.inf. (Sync patch r18695 from main trunk.) Cc: Jiewen Yao <jiewen.yao@intel.com> 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/branches/UDK2015@18818 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg SmbiosMeasurementDxe: Remove the tailing whitespaceStar Zeng
(Sync patch r18694 from main trunk.) Cc: Jiewen Yao <jiewen.yao@intel.com> 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/branches/UDK2015@18817 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg SmbiosMeasurementDxe: Use EFI_D_VERBOSE for internal dump functionsStar Zeng
Use EFI_D_VERBOSE instead of EFI_D_INFO in InternalDumpData() and InternalDumpHex(). And also add DEBUG_CODE wrapper to InternalDumpHex() call. It is to avoid the bother from the internal verbose debug information. (Sync patch r18693 from main trunk.) Cc: Jiewen Yao <jiewen.yao@intel.com> 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/branches/UDK2015@18816 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg SmbiosMeasurementDxe: Add (VOID **) typecast for GCC build failureStar Zeng
(Sync patch r18692 from main trunk.) Cc: Jiewen Yao <jiewen.yao@intel.com> 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/branches/UDK2015@18815 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg SmbiosMeasurementDxe: Use SMBIOS table and GUID correctlyStar Zeng
1. Smbios3Table used as SmbiosTable wrongly after SmbiosTable got from configuration table. 2. Use correct VendorGuid and VendorTable to measure. (Sync patch r18691 from main trunk.) Cc: Jiewen Yao <jiewen.yao@intel.com> 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/branches/UDK2015@18814 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16Publish FspHob to PEI Hob by default.Yao, Jiewen
because most platforms use such logic. PcdDataBaseHobGuid GuidHob is excluded because PCD database in FSP is different with the one in PEI. (Sync patch r18687 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com> Reviewed-by: "Ma, Maurice" <maurice.ma@intel.com> Reviewed-by: "Rangarajan, Ravi P" <ravi.p.rangarajan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18813 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg SetupBrowserDxe: Save global variable values before nest ↵Eric Dong
function called. The SendForm function can be called nest in it. This function also uses some global variables. So we must save global variable values before it been called again. Checked in the missing change for gBrowserFormSetList. (Sync patch r18681 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18812 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16Move Smbios measurement from TCG driver to Smbios driver.Yao, Jiewen
This is patch to add smbios measurement. The problem of current SMBIOS measurement is: 1) TCG drivers do not support SMBIOS3.0 table. 2) TCG drivers do not follow TCG platform spec on: "Platform configuration information that is automatically updated, such as clock registers, and system unique information, such as asset numbers or serial numbers, MUST NOT be measured into PCR [1], or any other PCR." So we decide to move Smbios measurement from TCG drivers to Smbios driver. (Sync patch r18680 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com> Reviewed-by: "Zeng, Star" <star.zeng@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18811 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16Fix issue that calling GetS3MemoryInfo() with wrong order.Yao, Jiewen
(Sync patch r18679 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com> Reviewed-by: "Ma, Maurice" <maurice.ma@intel.com> Reviewed-by: "Rangarajan, Ravi P" <ravi.p.rangarajan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18810 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16Do not deadloop if Microcode not found in FspTempRamInit.Yao, Jiewen
We do not consider microcode not found as critical error, because Microcode might be applied later. (Sync patch r18678 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com> Reviewed-by: "Ma, Maurice" <maurice.ma@intel.com> Reviewed-by: "Rangarajan, Ravi P" <ravi.p.rangarajan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18809 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16Move Smbios measurement from TCG driver to Smbios driver.Yao, Jiewen
This is patch to remove smbios measurement in TCG driver. There will be other patch to add it in Smbios driver. The problem of current SMBIOS measurement is: 1) TCG drivers do not support SMBIOS3.0 table. 2) TCG drivers do not follow TCG platform spec on: "Platform configuration information that is automatically updated, such as clock registers, and system unique information, such as asset numbers or serial numbers, MUST NOT be measured into PCR [1], or any other PCR." So we decide to move Smbios measurement from TCG drivers to Smbios driver. (Sync patch r18677 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com> Reviewed-by: "Zhang, Chao B" <chao.b.zhang@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18808 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16Add suppressif around TCG hash seleciton checkbox in TCG2Yao, Jiewen
Previous TCG2 configuration UI always add all TCG defined hash algorithm to let user select which one need be used. This brings risk that user might select unsupported hash, and selection is rejected later. So we enhance to UI to hide unsupported hash algorithm. (Sync patch r18676 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com> Reviewed-by: "Zhang, Chao B" <chao.b.zhang@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18807 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16Move Smbios table MAX length definition to Mde header filer.Yao, Jiewen
So that other module can also refer to them. (Sync patch r18674 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com> Reviewed-by: "Zeng, Star" <star.zeng@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18806 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg: Update UiApp to not display itselfRuiyu Ni
(Sync patch r18657 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18805 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg: Update BootManagerMenuApp to not display itselfRuiyu Ni
(Sync patch r18656 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18804 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg SetupBrowserDxe: Save global variable values before nest ↵Eric Dong
function called. The SendForm function can be called nest in it. This function also uses some global variables. So we must save global variable values before it been called again. Old implementation miss to save some global variables, this patch fixed it. (Sync patch r18650 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18803 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg VarCheckLib: R18611 was thoughtless for property setStar Zeng
R18611 only updated the logic to return correct property when no property set to variable with wildcard name. But VariablePropertySet needs the pointer of property data for set. So roll back the change in VariablePropertyGetWithWildcardName at R18611, and check the property revision first in VariablePropertyGet and SetVariableCheck before using the property data. (Sync patch r18626 from main trunk.) 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/branches/UDK2015@18802 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16SecurityPkg : Fix Rsa2048Sha256GuidedSectionExtractLib issueCohen, Eugene
This issue causes section extraction overrun and possible hang due to bad output size calculation. (Sync patch r18625 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: "Cohen, Eugene" <eugene@hp.com> Reviewed-by: "Zhang, Chao B" <chao.b.zhang@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18801 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16NetworkPkg: reset DHCP child when leaving PXE LoadFile.Fu Siyuan
The DHCP4 can have only one configured child instance so we need to reset the DHCP4 child when leaving PXE driver's LoadFile() function, otherwise the other programs which also need to use DHCP4 (like HTTP boot) will be impacted. (Sync patch r18616 from main trunk.) 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: Sriram Subramanian <sriram-s@hpe.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18800 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg: reset DHCP child when leaving PXE LoadFile.Fu Siyuan
The DHCP4 can have only one configured child instance so we need to reset the DHCP4 child when leaving PXE driver's LoadFile() function, otherwise the other programs which also need to use DHCP4 (like HTTP boot) will be impacted. (Sync patch r18615 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Sriram Subramanian <sriram-s@hpe.com> Reviewed-by: Ye Ting <ting.ye@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18799 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16SecurityPkg AuthVariableLib: Add the missing gEfiAuthenticatedVariableGuidStar Zeng
There is no real build failure, as AuthVariableLib always links to variable driver. But for code integrity, we should add it. (Sync patch r18613 from main trunk.) Cc: Jiewen Yao <jiewen.yao@intel.com> 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/branches/UDK2015@18798 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg VariableRuntimeDxe: Add the missing gEfiImageSecurityDatabaseGuidStar Zeng
Otherwise there will be build failure if without VarCheckUefiLib linked. (Sync patch r18612 from main trunk.) Cc: Jiewen Yao <jiewen.yao@intel.com> 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/branches/UDK2015@18797 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulepkg VarCheckLib: Return NULL when no property setStar Zeng
to variable with wildcard name. VarCheckLib has zeroed property for variable with wildcard name and is waiting for property set. The code should return NULL when no property set to variable with wildcard name, but not return the zeroed property that will impact the functionality of SetVariableCheck. The issue does not appear with VarCheckUefiLib linked as the library just has the expected property set. (Sync patch r18611 from main trunk.) Cc: Jiewen Yao <jiewen.yao@intel.com> 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/branches/UDK2015@18796 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16NetworkPkg: remove unnecessary timeout event when setting IPv6 address.Fu Siyuan
Use Ip6Cfg->SetData() to set IP6 manual address is asynchronous process and the registered data notify event will be singled when process is done. So it's not necessary to create another timeout event for the address setting. (Sync patch r18610 from main trunk.) 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: Jiaxin Wu <jiaxin.wu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18795 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16Update register hot key logic, return EFI_ALREADY_START status if same hot ↵Eric Dong
key already existed. In current case, if one key was requested to register twice, browser will override old hot key with new one. This behavior is not user friendly. Now update the logic, return EFI_ALREADY_STARTED for this case. If user still want to override it, he must unregistered it first. (Sync patch r18604 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18794 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16SecurityPkg: Clean up unused files in RngDxeThomas Palmer
Clean up files in RngDxe/IA32 and RngDxe/X64 that are subsumed by files in BaseRngLib. (Sync patch r18592 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Thomas Palmer <thomas.palmer@hpe.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Chao Zhang <chao.b.zhang@intel.com> Reviewed-by: Qin Long <qin.long@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18793 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16SecurityPkg: Integrate new RngLib into RngDxeThomas Palmer
Use the new RngLib to provide the IA32/X64 random data for RngDxe. Remove x86 specific functions from RdRand files. Simplify RngDxe by using WriteUnaligned64 for all platforms. Use GetRandomNumber128 in RngDxe to leverage 128 bit support provided by some HW RNG devices. (Sync patch r18591 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Thomas Palmer <thomas.palmer@hpe.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Chao Zhang <chao.b.zhang@intel.com> Reviewed-by: Qin Long <qin.long@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18792 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdePkg: Create GetRandomNumber128 in RngLibThomas Palmer
Declare GetRandomNumber128 in RngLib.h. Create GetRandomNumber128 in BaseRngLib, which is simply calling GetRandomNumber64 twice. A GetRandomNumber128 function allows platforms with 128bit HWRNGs to save on IO overhead that comes from having to prime the HWRNG device before each read operation. Using the HWRNG installed on the HP ProLiant m400 moonshot cartridge, this will save about 50ms per RAW Entropy operation as compared with calling GetRandomNumber64 twice. (Sync patch r18590 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Thomas Palmer <thomas.palmer@hpe.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Chao Zhang <chao.b.zhang@intel.com> Reviewed-by: Qin Long <qin.long@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18791 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16IntelFrameworkModulePkg GenericBdsLib: Do not assume perf entry count has no ↵Star Zeng
change Current implementation assumes the performance entry count has no change from multiple GetPerformanceMeasurement() while loops, it may cause the allocated buffer for PerfEntriesAsDxeHandle at the first loop to be overflowed if the following loop has the count changed. This patch is also to sync the change at commit R18417 "MdeModulePkg: Fix a performance data buffer overrun issue". (Sync patch r18562 from main trunk.) Cc: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18790 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg UefiBootManagerLib: Do not assume perf entry count has no changeStar Zeng
Current implementation assumes the performance entry count has no change from multiple GetPerformanceMeasurement() while loops, it may cause the allocated buffer for PerfEntriesAsDxeHandle at the first loop to be overflowed if the following loop has the count changed. This patch is also to sync the change at commit R17851 "IntelFrameworkModulePkg GenericBdsLib: Resolve array size mismatch". (Sync patch r18561 from main trunk.) Cc: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18789 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg Ip4Dxe: Ip4Config2 to request DHCP Option6 DNS server IPSamer El-Haj-Mahmoud
Ip4Config2 protocol implementation must request for DNS server info when the policy is set to DHCP. And when a DHCP server responds to it with a list of DNS server addresses, it must parse it and set it for the instance. Without this, nobody can do a Ip4Config->GetData for DNS server IPs before calling Dns->Configure(). This will mean a DHCP is initiated when calling Dns->Configure(), thus causing serious performance issues. This patch attempts to address this issue. (Sync patch r18560 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@hpe.com> Reviewed-by: Ye Ting <ting.ye@intel.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18788 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdeModulePkg: Add SMBIOS 3.0 support in NetLibGetSystemGuid.Samer El-Haj-Mahmoud
NetLibGetSystemGuid gets the UUID from SMBIOS table to use as the System GUID (in DHCP and other network use cases). This change adds support to get the UUID from either SMBIOS 2.x or 3.0, since SMBIOS 3.0 uses a different GUID in the System Configuration Table. (Sync patch r18559 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@hpe.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18787 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdePkg: Add RngLib into MdePkgQin Long
Add one library class (RngLib.h) with three GetRandomNumber16/32/64 APIs to provide random number generator services, and one library instance (BaseRngLib), based on Intel RdRand instruction access, to provide high-quality random numbers generator. (Sync patch r18519 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qin Long <qin.long@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18786 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16MdePkg: Add CPU RdRand access APIs for random number generationQin Long
Add AsmRdRand16/32/64 APIs for RdRand instruction access to generate high-quality random number. (Sync patch r18518 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qin Long <qin.long@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18785 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-16Update BaseTools from main trunk r18767.Jeff Fan
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18784 6f19259b-4bc3-4df7-8a09-765794883524
2015-09-25UefiCpuPkg/CpuMpPei: Fix wrong CpuData pointerJeff Fan
CpuData buffer should be located in allocated buffer instead of at end of WakeupBuffer. (Sync patch r18550 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18552 6f19259b-4bc3-4df7-8a09-765794883524