summaryrefslogtreecommitdiffstats
path: root/MdePkg/Include/Ebc
Commit message (Collapse)AuthorAgeFilesLines
* MdePkg: Apply uncrustify changesMichael Kubacki2021-12-071-25/+24
| | | | | | | | | | | | REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737 Apply uncrustify changes to .c/.h files in the MdePkg package Cc: Andrew Fish <afish@apple.com> Cc: Leif Lindholm <leif@nuviainc.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
* MdePkg: Replace BSD License with BSD+Patent LicenseMichael D Kinney2019-04-091-7/+1
| | | | | | | | | | | | | | | | | | | | https://bugzilla.tianocore.org/show_bug.cgi?id=1373 Replace BSD 2-Clause License with BSD+Patent License. This change is based on the following emails: https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html RFCs with detailed process for the license change: V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg/Base: introduce MAX_ALLOC_ADDRESSArd Biesheuvel2018-12-201-0/+5
| | | | | | | | | | | | | | | | On some architectures, the maximum representable address deviates from the virtual address range that is accessible by the firmware at boot time. For instance, on AArch64, UEFI mandates a 4 KB page size, which limits the address space to 48 bits, while more than that may be populated on a particular platform, for use by the OS. So introduce a new macro MAX_ALLOC_ADDRESS, which represent the maximum address the firmware should take into account when allocating memory ranges that need to be accessible by the CPU at boot time. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg: Clean up source filesLiming Gao2018-06-281-11/+11
| | | | | | | | | 1. Do not use tab characters 2. No trailing white space in one line 3. All files must end with CRLF Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com>
* MdePkg/BaseSafeIntLib: Add SafeIntLib class and instanceSean Brogan2018-01-251-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugzilla.tianocore.org/show_bug.cgi?id=798 SafeIntLib provides helper functions to prevent integer overflow during type conversion, addition, subtraction, and multiplication. Conversion Functions ==================== * Converting from a signed type to an unsigned type of the same size, or vice-versa. * Converting to a smaller type that could possibly overflow. * Converting from a signed type to a larger unsigned type. Unsigned Addition, Subtraction, Multiplication =============================================== * Unsigned integer math functions protect from overflow and underflow (in case of subtraction). Signed Addition, Subtraction, Multiplication ============================================ * Strongly consider using unsigned numbers. * Signed numbers are often used where unsigned numbers should be used. For example file sizes and array indices should always be unsigned. Subtracting a larger positive signed number from a smaller positive signed number with SafeInt32Sub() will succeed, producing a negative number, that then must not be used as an array index (but can occasionally be used as a pointer index.) Similarly for adding a larger magnitude negative number to a smaller magnitude positive number. * SafeIntLib does not protect you from such errors. It tells you if your integer operations overflowed, not if you are doing the right thing with your non-overflowed integers. * Likewise you can overflow a buffer with a non-overflowed unsigned index. Based on content from the following branch/commits: https://github.com/Microsoft/MS_UEFI/tree/share/MsCapsuleSupport https://github.com/Microsoft/MS_UEFI/commit/21ef3a321c907b40fa93797619c9f6c686dd92e0 https://github.com/Microsoft/MS_UEFI/commit/ca516b1a61315c2d823f453e12d2135098f53d61 https://github.com/Microsoft/MS_UEFI/commit/33bab4031a417d7d5a7d356c15a14c2e60302b2d Cc: Sean Brogan <sean.brogan@microsoft.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Sean Brogan <sean.brogan@microsoft.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg/ProcessorBind: add defines for page allocation granularityArd Biesheuvel2017-03-061-0/+6
| | | | | | | | | | | | | | The UEFI spec differs between architectures in the minimum alignment and granularity of page allocations that are visible to the OS as EFI_MEMORY_RUNTIME regions. So define macros that carry these values to the respective ProcessorBind.h header files. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
* MdePkg Base.h: Always define ASM_PFXJordan Justen2014-09-011-0/+4
| | | | | | | | | | | | Some compilers may define __USER_LABEL_PREFIX__ to determine the prefix used with ASM_PFX. Otherwise, IA32 will use a single underscore '_' character, and all other architectures will use an empty prefix. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16019 6f19259b-4bc3-4df7-8a09-765794883524
* Add defines for MAX values for EBC arch.Liming Gao2013-08-131-1/+7
| | | | | | | Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: michael.d.kinney@intel.com git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14547 6f19259b-4bc3-4df7-8a09-765794883524
* Update MdePkg and EdkCompatibilityPkg INT8 definition to be typedef signed ↵lgao42012-05-161-2/+2
| | | | | | | | | char to follow UEFI spec. Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Michael D. Kinney <michael.d.kinney@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13312 6f19259b-4bc3-4df7-8a09-765794883524
* Update the copyright notice formathhtian2010-04-231-1/+1
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10403 6f19259b-4bc3-4df7-8a09-765794883524
* Grammatical and disclaimer changes (does not follow internal C coding stds.)myronporter2010-03-121-20/+20
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10235 6f19259b-4bc3-4df7-8a09-765794883524
* Move content from CPU specific ProcessorBind.h files into Base.h if the ↵mdkinney2009-08-181-8/+0
| | | | | | content is the same for all supported CPU architectures. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9097 6f19259b-4bc3-4df7-8a09-765794883524
* Second set of changes based on a review of the code comments in the Include ↵pkandel2009-06-041-1/+1
| | | | | | directory for typos, grammar issues, and language clarity. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8467 6f19259b-4bc3-4df7-8a09-765794883524
* Allow EFIAPI to be defined on the compiler command line.jljusten2009-04-101-1/+7
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8061 6f19259b-4bc3-4df7-8a09-765794883524
* Update copyright for files modified in this yearqhuang82008-12-291-1/+1
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7148 6f19259b-4bc3-4df7-8a09-765794883524
* Add more detailed comments for many of the Base Typesmdkinney2008-12-071-6/+48
| | | | | | | Remove all declarations of UINT8_MAX. Use BIT8-1 instead. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6909 6f19259b-4bc3-4df7-8a09-765794883524
* Update FUNCTION_ENTRY_POINT() to be compatible with a wider variety of input ↵mdkinney2008-12-051-1/+1
| | | | | | parameters. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6883 6f19259b-4bc3-4df7-8a09-765794883524
* Add comments for the MACRO follow the Spec, and change some definition not ↵gikidy2008-12-051-4/+6
| | | | | | match the Spec. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6852 6f19259b-4bc3-4df7-8a09-765794883524
* Correct Minor Comments in M3 to M4 review.lgao42008-12-041-0/+9
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6842 6f19259b-4bc3-4df7-8a09-765794883524
* Use doxygen comment style for document entity such as struct, enum, variable ↵klu22008-08-141-25/+25
| | | | | | that use /// but not // git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5642 6f19259b-4bc3-4df7-8a09-765794883524
* CHAR8 is defined as "1-byte Character" in UEFI spec, but not "unsigned ↵qwang122008-06-051-1/+1
| | | | | | Character". Most compiler treats "char" as signed unless overide by compiler options. Most compiler generate warnings for statement like "CHAR8 *S = "Hello"". In addition, we have defined CHAR8 as char for processor arch such as IA32, X64 and IPF in EDK II. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5329 6f19259b-4bc3-4df7-8a09-765794883524
* Add FUNCTION_ENTRY_POINT macromdkinney2007-11-271-0/+2
| | | | | | | | Update DxeDebugLibSerialPort to have a module type of BASE git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4328 6f19259b-4bc3-4df7-8a09-765794883524
* Updated headers to follow coding standardAJFISH2007-06-271-2/+0
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2815 6f19259b-4bc3-4df7-8a09-765794883524
* Move to directory "Include"yshang12007-06-081-0/+85
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2646 6f19259b-4bc3-4df7-8a09-765794883524
* Moved the MdePkg to OldMdePkg so that new code in MdePkg does not break ↵lhauch2007-06-011-85/+0
| | | | | | existing builds. Also updated the SPD and FPD files UiNames git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2616 6f19259b-4bc3-4df7-8a09-765794883524
* Add #define CPU_STACK_ALIGNMENT to the ProcessorBind.h for each of the ↵mdkinney2006-11-091-0/+6
| | | | | | supported CPU architectures. This value is sizeof(UINTN) for IA-32, X64, and EBC. It is 16 bytes for IPF. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1920 6f19259b-4bc3-4df7-8a09-765794883524
* 1. UINTN & INTN issue for EBC architecture:qhuang82006-06-221-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | The MAX_BIT of EBC will no longer be fixed to bit 63. It is defined as (1ULL << (sizeof (INTN) * 8 - 1)). Make EdkModulePkg & MdePkg EBC compiler clean: treat all EFI_STATUS error code as variable. 2. PrintLib Complete all missing ASSERT()s. Fix “\n” & “%\n” issue thanks to the clarification of MWG 0.56d. Adjust StatusString array to support EBC build. 3. BaseMemoryLib Adjust ASSERT () & function header of ComparaMem, SetMemXX, ScanMemXX to synchronize with MWG 0.56d. 4.SmbusLib Change Pec bit to bit 22 SmBusAddress to synchronize MWG 0.56d. Add ASSERT()s to check if length is illegal for SmBusBlockWrite() & SmBusProcessBlock() since it is 6 bit now. 5. PerformanceLib Rename “EdkDxePerformanceLib” & “EdkPeiPerformanceLib” to “DxePerformanceLib” & “PeiPerformanceLib” respectively. Synchronize the function header of GetPerformanceMeasurement() with MWG 0.56d. 6. BasePeCoffLoaderLib. Make PeCoffLoaderLoadImage () Assert() if ImageContext is NULL> Make PeCoffLoaderLoadImage () return RETURN_INVALID_PARAMETER if the ImageAddress in ImageContext is 0. Adjust some coding style. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@593 6f19259b-4bc3-4df7-8a09-765794883524
* Initial import.bbahnsen2006-04-211-0/+81
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3 6f19259b-4bc3-4df7-8a09-765794883524