summaryrefslogtreecommitdiffstats
path: root/MdePkg/Include
Commit message (Collapse)AuthorAgeFilesLines
* MdePkg/MpService.h: Trim whitespace at end of lineJeff Fan2016-08-171-235/+235
| | | | | | | | | | | | | Cc: Liming Gao <liming.gao@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Giri P Mudusuru <giri.p.mudusuru@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
* MdePkg/MpService.h: Fixed typo in function header to match PI specJeff Fan2016-08-171-17/+17
| | | | | | | | | | | | | Cc: Liming Gao <liming.gao@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Giri P Mudusuru <giri.p.mudusuru@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
* MdePkg: Fix guid conflict.Dong, Eric2016-08-161-1/+9
| | | | | | | | | Update Image Decoder Protocol GUID value to fix GUID conflict with EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_GUID. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg RVCT: add definition of UNREACHABLEArd Biesheuvel2016-08-121-0/+7
| | | | | | | | | | | | | The RVCT compiler in --gnu mode appears to simply strip of the __builtin prefix when it encounters calls to __builtin_xxx() functions, and so the __builtin_unreachable() we emit for GCC results in linker errors regarding undefined references against 'unreachable()'. So define UNREACHABLE() to a NOP instead. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg/HiiImageEx: Fix incorrect parameter type in GetImageInfo()Dandan Bi2016-08-111-1/+1
| | | | | | | | | | | | | | In latest UEFI2.6 spec, the type of the fourth parameter in function GetImageInfo() is "EFI_IMAGE_OUTPUT", but in the header file, it is "EFI_IMAGE_INPUT". Now correct it to follow the spec. Cc: Liming Gao <liming.gao@intel.com> Cc: Eric Dong <eric.dong@intel.com> Cc: Cecil Sheng <cecil.sheng@hpe.com> Cc: Abner Chang <abner.chang@hpe.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi <dandan.bi@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: Add DmaRemappingReportingTable.hGiri P Mudusuru2016-08-021-0/+261
| | | | | | | | | | | | | | | | | | | | | DMA Remapping Reporting (DMAR) ACPI table definitions from Intel(R) Virtualization Technology for Directed I/O (VT-D) Architecture Specification v2.4 dated June 2016. This replaces the DMARemappingReportingTable.h from EdkCompatibilityPkg\Foundation\Include\IndustryStandard Patch V2: added below defines and re-arranged the file. EFI_ACPI_DMAR_DRHD_FLAGS_INCLUDE_PCI_ALL EFI_ACPI_DMAR_ATSR_FLAGS_ALL_PORTS Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Giri P Mudusuru <giri.p.mudusuru@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
* BaseTools GCC: introduce GCC5 toolchain to support GCC v5.x in LTO modeArd Biesheuvel2016-08-021-1/+5
| | | | | | | | | | | | | | | | | | This adds support for GCC 5.x in LTO mode for IA32, X64, ARM and AARCH64. Due to the fact that the GCC project switched to a new numbering scheme where the first digit is now incremented for every major release, the new toolchain is simply called 'GCC5', and is intended to support all GCC v5.x releases. Since IA32 and X64 enable compiler optimizations (-Os) for both DEBUG and RELEASE builds, LTO support is equally enabled for both targets. On ARM and AARCH64, DEBUG builds are not optimized, and so the LTO optimizations are only enabled for RELEASE. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: move to 'hidden' visibility for all symbols under GCC/X64Ard Biesheuvel2016-08-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | When using GCC to build for X64, we switched to the position independent small code model, which is much more efficient in terms of code generation and runtime relocation footprint, and produces binaries that can execute correctly from any offset. However, the PIC routines are by default geared towards hosted binaries containing symbol references that may resolve to definitions in other dynamic objects, and for this reason, most symbol references are indirected via a GOT entry (which also results in a .reloc fixup entry) unless we annotate them. For this reason, we introduced the 'protected' visibility annotation for all symbol definitions and references, by setting the GCC visibility pragma. However, as it turns out, this is not sufficient for all versions of GCC, and in some cases (GCC 5.x using the GCC49 toolchain tag), may still result in GOT based relocations. So switch to 'hidden' visibility instead, which is slightly stronger, and fixes this issue for the versions of GCC that exhibit the problem. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg X64: force 'protected' visibility when building with -fpicArd Biesheuvel2016-07-211-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When building position independent (PIC) ELF objects, the GCC compiler assumes that each symbol with external linkage may potentially end up being exported from a shared library, which means that each of those symbols may be subject to symbol preemption, i.e., the executable linking to the shared library at runtime may override symbols exported by the shared library, and every internal reference held by the shared library itself *must* be made to point to the overridden version instead. For this reason, PIC code symbol references always go via the Global Offset Table (GOT), even if the code in question references symbols that are defined in the same compilation unit. The GOT refers to each symbol by absolute address, and so each entry is subject to runtime relocation. Since not every symbol with external linkage is ultimately exported from a shared library, the GCC compiler allows control over symbol visibility using attributes, command line arguments and pragmas, where 'protected' means that the symbol is only referenced by the shared library itself. Due to the poor hygiene in EDK2 regarding the use of the 'static' modifier, many symbols that are local to their compilation unit end up being referenced indirectly via the GOT when building PIC code. In UEFI, there are no shared libraries and so there is no need to deal with symbol preemption, and we can mark every symbol reference protected. The only method that applies to all symbol definitions as well as declarations is the #pragma. So set the visibility 'protected' pragma when building PIC code for X64 using GCC. Note that this affects code generated with the -fpie compiler switch as well as the -fpic compiler switch. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-By: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg CryptoPkg EdkCompatibilityPkg: retire NO_BUILTIN_VA_FUNCS defineArd Biesheuvel2016-07-211-1/+1
| | | | | | | | | | | | This is never set anymore, so unsetting it or testing whether it is unset no longer makes any sense. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-By: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: Enable new MS VA intrinsics for GNUC x86 64bits buildShi, Steven2016-07-211-0/+26
| | | | | | | | | | | | | | | | | | | | Both GCC and LLVM 3.8 64bits support new variable argument (VA) intrinsics for Microsoft ABI, enable these new VA intrinsics for GNUC family 64bits code build. These VA intrinsics are only permitted use in 64bits code, so not use them in 32bits code build. The original 32bits GNU VA intrinsics has the same calling convention as MS, so we don't need change them. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Steven Shi <steven.shi@intel.com> [ardb: update CPP logic so that the change only applies to X64] Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-By: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: avoid __builtin_unreachable() on GCC v4.4Ard Biesheuvel2016-07-211-1/+2
| | | | | | | | | | | | GCC v4.4 does not implement __builtin_unreachable(), so avoid using it when building with this version or earlier. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-By: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg/IndustryStandard: introduce EFI_PCI_CAPABILITY_ID_SHPCLaszlo Ersek2016-07-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The "Pci22.h" header file defines the macro EFI_PCI_CAPABILITY_ID_HOTPLUG with value 0x06. According to all of: - later parts of the same header file, - Appendix H ("Capability IDs") of the PCI Local Bus Specification Revision 2.3, - and Chapter 2 ("Capability IDs") of the PCI Code and ID Assignment Specification Revision 0.9, 0x06 means "CompactPCI Hot Swap". It does not mean "PCI Hot-Plug": that capability is described by ID 0x0C: 0Ch PCI Hot-Plug -- This Capability ID indicates that the associated device conforms to the Standard Hot-Plug Controller model. Therefore EFI_PCI_CAPABILITY_ID_HOTPLUG is arguably a misnomer. PciBusDxe (mis-)uses EFI_PCI_CAPABILITY_ID_HOTPLUG in the IsSHPC() helper function to identify PCI Hot-Plug capability. In order to preserve compatibility with existent code, leave EFI_PCI_CAPABILITY_ID_HOTPLUG alone, and introduce EFI_PCI_CAPABILITY_ID_SHPC with the right ID value. Cc: "Johnson, Brian J." <bjohnson@sgi.com> Cc: Alex Williamson <alex.williamson@redhat.com> Cc: Andrew Fish <afish@apple.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Marcel Apfelbaum <marcel@redhat.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ruiyu Ni <Ruiyu.ni@intel.com>
* MdePkg: Fix typos in commentsMudusuru, Giri P2016-07-113-6/+6
| | | | | | | | | | | - availabe to available - EFI_UNSUPPORTEDT to EFI_UNSUPPORTED Cc: Liming Gao <liming.gao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Giri P Mudusuru <giri.p.mudusuru@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg Base.h: Fix typo funcation to functionStar Zeng2016-07-091-5/+5
| | | | | | | | | Cc: Liming Gao <liming.gao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> 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: Liming Gao <liming.gao@intel.com>
* MdePkg/IndustryStandard: fix build break due to latest Atapi.h changeFeng Tian2016-06-291-2/+2
| | | | | | | | Update the new introduced ATA_CMD_SEEK to ATA_CMD_ATAPI_SEEK. Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Feng Tian <feng.tian@intel.com>
* MdePkg/IndustryStandard: Add additional Atapi.h definitions.Feng Tian2016-06-291-128/+312
| | | | | | | | Add definitions complying Industry Standard specifications. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anandakrishnan Loganathan <anandakrishnanl@ami.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
* MdePkg: Refine codes related to Dhcpv4 and Dhcpv6 configuration.Zhang Lubo2016-06-231-0/+282
| | | | | | | | | | | | | | | | | | v2: *add some new arch types for PXE boot. refine the definition of arch types for http boot Add a new head file Dhcp.h in Mde/Include/IndustryStandard, normalize the universal option numbers and other network number tags. Cc: Sriram Subramanian <sriram-s@hpe.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Ye Ting <ting.ye@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Cc: Wu Jiaxin <jiaxin.wu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Zhang Lubo <lubo.zhang@intel.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
* MdePkg/PCI: Add missing PCI/PCIE definitionsRuiyu Ni2016-06-224-21/+503
| | | | | | | | | | | The definitions are required by certain platform initialization code. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Jeff Fan <jeff.fan@intel.com> Cc: Feng Tian <feng.tian@intel.com> Reviewed-by: Amy Chan <amy.chan@intel.com>
* MdePkg/DebugLib: Flag post-_ASSERT() as unreachable for analyzers.Marvin H?user2016-06-221-0/+1
| | | | | | | | | | | | | | | | | When a variable is compared to NULL as part of an ASSERT() call, the code implies that the variable may be NULL. Certain Static Analyzers, such as the Clang Static Analyzer, then issue false warnings for any untested access of that pointer, even though that defeats the intention behind ASSERT(). This patch flags the position after _ASSERT() as unreachable for Static Analyzers to indicate that if the variable is NULL, execution cannot pass. As the ANALYZER-prefixed version is used, the executables will not have any code stripped during compilation. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: Add NORETURN attribute and UNREACHABLE() macro.Marvin H?user2016-06-221-0/+110
| | | | | | | | | | | | | | | | | | | | The NORETURN attribute informs compilers and analyzers that the flagged function cannot return. This may improve the quality of the optimizations. The UNREACHABLE() macro informs compilers and analyzers that its position cannot be reached, for example eliminating implicit returns. It is recommended to be used together with the NORETURN attribute to prevent warnings regarding the function flagged as 'noreturn' returning. The ANALYZER-prefixed versions have the same effects, but exclude compilers. They may be used to surpress warnings of static analyzers, such as possible dereferencing of a NULL pointer when dereferencing it after having checked it via ASSERT(). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
* MdePkg: Indicate UnicodeStrToAsciiStr/AsciiStrToUnicodeStr to be deprecatedStar Zeng2016-06-211-0/+11
| | | | | | | | | | | | Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
* MdePkg: MTftp6: Correct #define value in Mtfp6.hhegdenag2016-06-161-1/+3
| | | | | | | | | | | | | defined values of EFI_MTFTP6_ERRORCODE_ILLEGAL_OPERATION and EFI_MTFTP6_ERRORCODE_FILE_ALREADY_EXISTS are the same. This patch corrects the value of EFI_MTFTP6_ERRORCODE_ILLEGAL_OPERATION to 4. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hegde Nagaraj P <nagaraj-p.hegde@hpe.com> Reviewed-by: Ye Ting <ting.ye@intel.com> Reviewed-by: Sriram Subramanian <sriram-s@hpe.com> Reviewed-By: Wu Jiaxin <jiaxin.wu@intel.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
* MdePkg/BaseLib: Add 2 more safe string functions.Jiewen Yao2016-06-061-1/+93
| | | | | | | | | | | | | | | Add UnicodeStrToAsciiStrS() and AsciiStrToUnicodeStrS() API. These 2 safe version APIs are used to replace UnicodeStrToAsciiStr() and AsciiStrToUnicodeStr() API. The safe version string convert APIs use similar check as StrCpyS(). Cc: Liming Gao <Liming.Gao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <Jiewen.Yao@intel.com> Reviewed-by: Liming Gao <Liming.Gao@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
* MdePkg: Follow PI1.4a update SmmStartupThisAP() descriptionJeff Fan2016-06-021-11/+11
| | | | | | | | Cc: Liming Gao <liming.gao@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: Follow PI1.4a update EFI_SEC_PLATFORM_INFORMATION2 descriptionJeff Fan2016-06-021-3/+3
| | | | | | | | Cc: Liming Gao <liming.gao@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: Follow PI1.4a to update EFI_SMM_SW_REGISTER2 return statusJeff Fan2016-06-021-3/+3
| | | | | | | | Cc: Liming Gao <liming.gao@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: Add a header for NVMe v1.1 spec. definitions.Darbin Reyes2016-05-271-0/+935
| | | | | | | | | | | | | | | Adds a public header for NVMe v1.1 spec. definitions. The majority of these definitions where copied from a private header in MdeModulePkg/Bus/Pci/NvmExpress/NvmExpressHci.h. Additional definitions were added e.g. the NVMe Smart Health Log and Firmware Info. Log structures. These definitions should be in a public header so that clients of the NVMe passthru protocol can use them to execute NVMe commands. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Darbin Reyes <darbin.emm.reyes@hpe.com> Reviewed-by: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@hpe.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
* MdePkg: Correct EFI_HTTP_CONFIGURE return status valueJiaxin Wu2016-05-261-1/+0
| | | | | | | | | | | | Cc: Ye Ting <ting.ye@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Cc: Zhang Lubo <lubo.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com> Reviewed-by: Zhang Lubo <lubo.zhang@intel.com>
* MdePkg/BaseLib: Add more comments for safe string functions.Jiewen Yao2016-05-241-0/+36
| | | | | | | | | | | | Add more comments: 1) EDKII version safe string function is similar as the one C11. 2) If error is returned, the Destination is unmodified. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg/WSMT.h: update header comment to use official URL link.Jiewen Yao2016-05-241-1/+1
| | | | | | | | | | | Update WSMT table link to official MSDN URL. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com>
* MdePkg: Update StatusCode Runtime Protocol comments to follow PI spec 1.4a.Liming Gao2016-05-231-12/+3
| | | | | | Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: Follow PI1.4a to fix artificial limitation of SkuId rangeStar Zeng2016-05-231-6/+1
| | | | | | | | | | | | | There is absolutely no reason to artificially limit the SKU range to 1-255. PI1.4a spec fixed the artificial limitation. This patch is to follow PI1.4a spec to remove PCD_MAX_SKU_ID definition, the check to PCD_MAX_SKU_ID and the comments describes the limitation. 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: Liming Gao <liming.gao@intel.com>
* MdePkg: Follow PI1.4a to update the comments of EndOfDxe and SmmReadyToLockStar Zeng2016-05-233-20/+41
| | | | | | | | | Cc: Jiewen Yao <jiewen.yao@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: Liming Gao <liming.gao@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
* MdePkg: Clarification to the return status of EFI_PEIM_NOTIFY_ENTRY_POINTStar Zeng2016-05-201-2/+3
| | | | | | | | | | | | | | | | | | In Previous PI spec (< PI1.4a) Volume 1, Section 7.4.1, the callback EFI_PEIM_NOTIFY_ENTRY_POINT is defined. A description for the arguments are provided but not for the EFI_STATUS return value. PI1.4a updated EFI_PEIM_NOTIFY_ENTRY_POINT definition to include a new paragraph with this sentence after the arguments: "The status code returned from this function is ignored" This patch is to follow PI1.4a spec to update the code. 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: Liming Gao <liming.gao@intel.com>
* MdePkg: Update EFI_RESOURCE_ATTRIBUTE_READ_ONLY_PROTECTABLE to 0x00080000Star Zeng2016-05-201-3/+3
| | | | | | | | | | | | | | Previous PI spec (< PI1.4a) has EFI_RESOURCE_ATTRIBUTE_PERSISTENT and EFI_RESOURCE_ATTRIBUTE_READ_ONLY_PROTECTABLE with same value 0x00800000. To resolve the conflict, PI1.4a updated EFI_RESOURCE_ATTRIBUTE_READ_ONLY_PROTECTABLE to 0x00080000, this patch is to follow PI1.4a spec to update the code. 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: Liming Gao <liming.gao@intel.com>
* MdePkg IndustryStandard/Scsi.h: Add Unmap command supportHao Wu2016-05-201-4/+60
| | | | | | | | | | | | | | | According to the SCSI Block Commands - 4 (SBC-4) spec, the patch add SCSI unmap command support in IndustryStandard/Scsi.h. The following changes have been made: 1. Add SCSI unmap command OP Code 2. Update the structure definition for Block Limits VPD page 3. Add structure definitions for UNMAP parameter list header & UNMAP block descriptor. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
* MdePkg: Add NFIT definition from ACPI 6.1Samer El-Haj-Mahmoud2016-05-161-0/+3
| | | | | | | | | Add NFIT definition from ACPI 6.1 for the NVDIMM Control Region Structure Valid Fields for Manufacturing Location and Manufacturing Date Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: Add HII definitions from UEFI 2.6Samer El-Haj-Mahmoud2016-05-131-0/+16
| | | | | | | | | | Add HII definitions from UEFI 2.6 for HII Image Variability and PNG Blocks Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Dandan Bi <dandan.bi@intel.com>
* MdePkg Protocol/AtaPassThru.h: Update PortMultiplierPort related commentsHao Wu2016-05-121-4/+4
| | | | | | | | | | | | | | | | | | | | | | The UEFI2.5 Errata (Mantis ticket 1472 - https://mantis.uefi.org/mantis/view.php?id=1472) updated 'PortMultiplierPort' parameter description for the following services in EFI_ATA_PASS_THRU_PROTOCOL: 1. PassThru 2. BuildDevicePath 3. ResetDevice Now, if there is no port multiplier on a ATA controller port, the PortMultiplierPort parameter should be set to 0xFFFF instead of 0. Please note that this is an incompatible semantic change. The consumer of EFI_ATA_PASS_THRU_PROTOCOL needs to re-examine its usage to follow UEFI 2.5 Errata mantis 1472. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
* MdePkg Protocol/DevicePath.h: Update SATA Device Path commentsHao Wu2016-05-121-2/+2
| | | | | | | | | | | | | | | The UEFI2.5 spec (Mantis ticket 1353 - https://mantis.uefi.org/mantis/view.php?id=1353) updated the Port Multiplier Port Number description of SATA device path to use 0xFFFF when the device is directly connected to the HBA. Please note that this is an incompatible semantic change. The consumer of SATA device path needs to re-examine its usage to follow UEFI 2.5 mantis 1353. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
* MdePkg: Add TCG_BLOCK_SID_FEATURE_DESCRIPTOR definition.Eric Dong2016-05-052-0/+13
| | | | | | Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
* SecurityPkg TcgStorageOpalLib: Update ComId for Block SID command.Eric Dong2016-05-051-0/+4
| | | | | | | | | | | The ComId for Block SID authentication command is 0x0005 according to "TCG Storage Feature Set: Block SID Authentication Specification Version 1.0.0". Update code to follow this spec requirement. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
* MdePkg: Revert AuditMode/DeployedMode name definitionZhang, Chao B2016-05-042-28/+3
| | | | | | | | | | | | | Revert AuditMode/DeployedMode definition from Customized Secure Boot feature defined in UEFI2.5 Mantis 1263. The feature has been moved to https://github.com/tianocore/edk2-staging/tree/Customized-Secure-Boot Previous check-in hash is SHA-1: 79e7b6472797f156d1ff28f3022b25d9c6f250f9 Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Chao Zhang <chao.b.zhang@intel.com> Reviewed-by: El-Haj-Mahmoud Samer <samer.el-haj-mahmoud@hpe.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
* MdePkg: Add WSMT definition.Jiewen Yao2016-04-291-0/+39
| | | | | | | | | | | This patch adds Windows SMM Security Mitigation Table @ http://download.microsoft.com/download/1/8/A/18A21244-EB67-4538-BAA2-1A54E0E490B6/WSMT.docx Cc: "Gao, Liming" <liming.gao@intel.com> Cc: "Kinney, Michael D" <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com> Reviewed-by: "Gao, Liming" <liming.gao@intel.com>
* MdePkg:Http11.h: Add defines for "Expect" headerNagaraj Hegde2016-04-271-0/+14
| | | | | | | | | | | Add #defines for "Expect" header, which is a part of RFC 2616 and used for HTTP PUT/POST operations. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hegde, Nagaraj P <nagaraj-p.hegde@hpe.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Jiaxin Wu <jiaxin.wu@intel.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
* MdePkg: Add EFI Erase Block Protocol definitionsHao Wu2016-04-131-0/+105
| | | | | | | | This protocol is newly introduced in UEFI 2.6 spec. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
* MdePkg: Update PerformanceLib comments not to check Identifier.Liming Gao2016-04-111-2/+2
| | | | | | | | | In PerformanceLib, Identifier is for single PERF, not the pair of PERF. When find the matched START and END pair, the identifier will not be checked. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com>
* MdePkg Cper.h: Add missing structure for 'Processor Error Record'Hao Wu2016-04-061-1/+18
| | | | | | Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-off-by: Jeff Fan <jeff.fan@intel.com>
* MdePkg: Add ARM Serial Port Subtypes to DBG2Sami Mujawar2016-04-011-0/+6
| | | | | | | | | | | | The Microsoft Debug Port Table 2 (DBG2) specification revision October 6, 2015 adds support for Serial Port Subtypes for ARM. This patch adds these definitions. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Evan Lloyd <evan.lloyd@arm.com> Reviewed-by: Yao Jiewen <jiewen.yao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>