diff options
Diffstat (limited to 'MdePkg/Library/BaseLib/BaseLibInternals.h')
-rw-r--r-- | MdePkg/Library/BaseLib/BaseLibInternals.h | 1000 |
1 files changed, 2 insertions, 998 deletions
diff --git a/MdePkg/Library/BaseLib/BaseLibInternals.h b/MdePkg/Library/BaseLib/BaseLibInternals.h index ad0d823f2f44..41869562d405 100644 --- a/MdePkg/Library/BaseLib/BaseLibInternals.h +++ b/MdePkg/Library/BaseLib/BaseLibInternals.h @@ -1,14 +1,8 @@ /** @file Declaration of internal functions in BaseLib. - Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR> - This program and the accompanying materials - are licensed and made available under the terms and conditions of the BSD License - which accompanies this distribution. The full text of the license may be found at - http://opensource.org/licenses/bsd-license.php. - - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR> + SPDX-License-Identifier: BSD-2-Clause-Patent **/ @@ -340,34 +334,6 @@ InternalSwitchStack ( /** - Worker function that locates the Node in the List. - - By searching the List, finds the location of the Node in List. At the same time, - verifies the validity of this list. - - If List is NULL, then ASSERT(). - If List->ForwardLink is NULL, then ASSERT(). - If List->backLink is NULL, then ASSERT(). - If Node is NULL, then ASSERT(); - If PcdMaximumLinkedListLength is not zero, and prior to insertion the number - of nodes in ListHead, including the ListHead node, is greater than or - equal to PcdMaximumLinkedListLength, then ASSERT(). - - @param List A pointer to a node in a linked list. - @param Node A pointer to one nod. - - @retval TRUE Node is in List. - @retval FALSE Node isn't in List, or List is invalid. - -**/ -BOOLEAN -EFIAPI -IsNodeInList ( - IN CONST LIST_ENTRY *List, - IN CONST LIST_ENTRY *Node - ); - -/** Worker function that returns a bit field from Operand. Returns the bitfield specified by the StartBit and the EndBit from Operand. @@ -498,28 +464,6 @@ InternalIsDecimalDigitCharacter ( /** - Convert a Unicode character to upper case only if - it maps to a valid small-case ASCII character. - - This internal function only deal with Unicode character - which maps to a valid small-case ASCII character, i.e. - L'a' to L'z'. For other Unicode character, the input character - is returned directly. - - @param Char The character to convert. - - @retval LowerCharacter If the Char is with range L'a' to L'z'. - @retval Unchanged Otherwise. - -**/ -CHAR16 -EFIAPI -InternalCharToUpper ( - IN CHAR16 Char - ); - - -/** Convert a Unicode character to numerical value. This internal function only deal with Unicode character @@ -581,26 +525,6 @@ InternalAsciiIsDecimalDigitCharacter ( /** - Converts a lowercase Ascii character to upper one. - - If Chr is lowercase Ascii character, then converts it to upper one. - - If Value >= 0xA0, then ASSERT(). - If (Value & 0x0F) >= 0x0A, then ASSERT(). - - @param Chr one Ascii character - - @return The uppercase value of Ascii character - -**/ -CHAR8 -EFIAPI -InternalBaseLibAsciiToUpper ( - IN CHAR8 Chr - ); - - -/** Check if a ASCII character is a hexadecimal character. This internal function checks if a ASCII character is a @@ -938,926 +862,6 @@ InternalX86RdRand64 ( OUT UINT64 *Rand ); - -#elif defined (MDE_CPU_IPF) -// -// -// IPF specific functions -// - -/** - Reads control register DCR. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_DCR. - - @return The 64-bit control register DCR. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterDcr ( - VOID - ); - - -/** - Reads control register ITM. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_ITM. - - @return The 64-bit control register ITM. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterItm ( - VOID - ); - - -/** - Reads control register IVA. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IVA. - - @return The 64-bit control register IVA. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIva ( - VOID - ); - - -/** - Reads control register PTA. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_PTA. - - @return The 64-bit control register PTA. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterPta ( - VOID - ); - - -/** - Reads control register IPSR. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IPSR. - - @return The 64-bit control register IPSR. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIpsr ( - VOID - ); - - -/** - Reads control register ISR. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_ISR. - - @return The 64-bit control register ISR. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIsr ( - VOID - ); - - -/** - Reads control register IIP. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IIP. - - @return The 64-bit control register IIP. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIip ( - VOID - ); - - -/** - Reads control register IFA. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IFA. - - @return The 64-bit control register IFA. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIfa ( - VOID - ); - - -/** - Reads control register ITIR. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_ITIR. - - @return The 64-bit control register ITIR. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterItir ( - VOID - ); - - -/** - Reads control register IIPA. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IIPA. - - @return The 64-bit control register IIPA. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIipa ( - VOID - ); - - -/** - Reads control register IFS. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IFS. - - @return The 64-bit control register IFS. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIfs ( - VOID - ); - - -/** - Reads control register IIM. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IIM. - - @return The 64-bit control register IIM. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIim ( - VOID - ); - - -/** - Reads control register IHA. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IHA. - - @return The 64-bit control register IHA. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIha ( - VOID - ); - - -/** - Reads control register LID. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_LID. - - @return The 64-bit control register LID. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterLid ( - VOID - ); - - -/** - Reads control register IVR. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IVR. - - @return The 64-bit control register IVR. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIvr ( - VOID - ); - - -/** - Reads control register TPR. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_TPR. - - @return The 64-bit control register TPR. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterTpr ( - VOID - ); - - -/** - Reads control register EOI. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_EOI. - - @return The 64-bit control register EOI. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterEoi ( - VOID - ); - - -/** - Reads control register IRR0. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IRR0. - - @return The 64-bit control register IRR0. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIrr0 ( - VOID - ); - - -/** - Reads control register IRR1. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IRR1. - - @return The 64-bit control register IRR1. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIrr1 ( - VOID - ); - - -/** - Reads control register IRR2. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IRR2. - - @return The 64-bit control register IRR2. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIrr2 ( - VOID - ); - - -/** - Reads control register IRR3. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_IRR3. - - @return The 64-bit control register IRR3. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterIrr3 ( - VOID - ); - - -/** - Reads control register ITV. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_ITV. - - @return The 64-bit control register ITV. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterItv ( - VOID - ); - - -/** - Reads control register PMV. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_PMV. - - @return The 64-bit control register PMV. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterPmv ( - VOID - ); - - -/** - Reads control register CMCV. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_CMCV. - - @return The 64-bit control register CMCV. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterCmcv ( - VOID - ); - - -/** - Reads control register LRR0. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_LRR0. - - @return The 64-bit control register LRR0. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterLrr0 ( - VOID - ); - - -/** - Reads control register LRR1. - - This is a worker function for AsmReadControlRegister() - when its parameter Index is IPF_CONTROL_REGISTER_LRR1. - - @return The 64-bit control register LRR1. - -**/ -UINT64 -EFIAPI -AsmReadControlRegisterLrr1 ( - VOID - ); - - -/** - Reads application register K0. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_K0. - - @return The 64-bit application register K0. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterK0 ( - VOID - ); - - - -/** - Reads application register K1. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_K1. - - @return The 64-bit application register K1. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterK1 ( - VOID - ); - - -/** - Reads application register K2. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_K2. - - @return The 64-bit application register K2. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterK2 ( - VOID - ); - - -/** - Reads application register K3. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_K3. - - @return The 64-bit application register K3. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterK3 ( - VOID - ); - - -/** - Reads application register K4. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_K4. - - @return The 64-bit application register K4. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterK4 ( - VOID - ); - - -/** - Reads application register K5. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_K5. - - @return The 64-bit application register K5. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterK5 ( - VOID - ); - - -/** - Reads application register K6. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_K6. - - @return The 64-bit application register K6. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterK6 ( - VOID - ); - - -/** - Reads application register K7. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_K7. - - @return The 64-bit application register K7. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterK7 ( - VOID - ); - - -/** - Reads application register RSC. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_RSC. - - @return The 64-bit application register RSC. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterRsc ( - VOID - ); - - -/** - Reads application register BSP. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_BSP. - - @return The 64-bit application register BSP. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterBsp ( - VOID - ); - - -/** - Reads application register BSPSTORE. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_BSPSTORE. - - @return The 64-bit application register BSPSTORE. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterBspstore ( - VOID - ); - - -/** - Reads application register RNAT. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_RNAT. - - @return The 64-bit application register RNAT. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterRnat ( - VOID - ); - - -/** - Reads application register FCR. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_FCR. - - @return The 64-bit application register FCR. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterFcr ( - VOID - ); - - -/** - Reads application register EFLAG. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_EFLAG. - - @return The 64-bit application register EFLAG. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterEflag ( - VOID - ); - - -/** - Reads application register CSD. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_CSD. - - @return The 64-bit application register CSD. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterCsd ( - VOID - ); - - -/** - Reads application register SSD. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_SSD. - - @return The 64-bit application register SSD. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterSsd ( - VOID - ); - - -/** - Reads application register CFLG. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_CFLG. - - @return The 64-bit application register CFLG. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterCflg ( - VOID - ); - - -/** - Reads application register FSR. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_FSR. - - @return The 64-bit application register FSR. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterFsr ( - VOID - ); - - -/** - Reads application register FIR. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_FIR. - - @return The 64-bit application register FIR. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterFir ( - VOID - ); - - -/** - Reads application register FDR. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_FDR. - - @return The 64-bit application register FDR. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterFdr ( - VOID - ); - - -/** - Reads application register CCV. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_CCV. - - @return The 64-bit application register CCV. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterCcv ( - VOID - ); - - -/** - Reads application register UNAT. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_UNAT. - - @return The 64-bit application register UNAT. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterUnat ( - VOID - ); - - -/** - Reads application register FPSR. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_FPSR. - - @return The 64-bit application register FPSR. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterFpsr ( - VOID - ); - - -/** - Reads application register ITC. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_ITC. - - @return The 64-bit application register ITC. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterItc ( - VOID - ); - - -/** - Reads application register PFS. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_PFS. - - @return The 64-bit application register PFS. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterPfs ( - VOID - ); - - -/** - Reads application register LC. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_LC. - - @return The 64-bit application register LC. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterLc ( - VOID - ); - - -/** - Reads application register EC. - - This is a worker function for AsmReadApplicationRegister() - when its parameter Index is IPF_APPLICATION_REGISTER_EC. - - @return The 64-bit application register EC. - -**/ -UINT64 -EFIAPI -AsmReadApplicationRegisterEc ( - VOID - ); - - - -/** - Transfers control to a function starting with a new stack. - - Transfers control to the function specified by EntryPoint using the new stack - specified by NewStack and passing in the parameters specified by Context1 and - Context2. Context1 and Context2 are optional and may be NULL. The function - EntryPoint must never return. - - If EntryPoint is NULL, then ASSERT(). - If NewStack is NULL, then ASSERT(). - - @param EntryPoint A pointer to function to call with the new stack. - @param Context1 A pointer to the context to pass into the EntryPoint - function. - @param Context2 A pointer to the context to pass into the EntryPoint - function. - @param NewStack A pointer to the new stack to use for the EntryPoint - function. - @param NewBsp A pointer to the new memory location for RSE backing - store. - -**/ -VOID -EFIAPI -AsmSwitchStackAndBackingStore ( - IN SWITCH_STACK_ENTRY_POINT EntryPoint, - IN VOID *Context1, OPTIONAL - IN VOID *Context2, OPTIONAL - IN VOID *NewStack, - IN VOID *NewBsp - ); - -/** - Internal worker function to invalidate a range of instruction cache lines - in the cache coherency domain of the calling CPU. - - Internal worker function to invalidate the instruction cache lines specified - by Address and Length. If Address is not aligned on a cache line boundary, - then entire instruction cache line containing Address is invalidated. If - Address + Length is not aligned on a cache line boundary, then the entire - instruction cache line containing Address + Length -1 is invalidated. This - function may choose to invalidate the entire instruction cache if that is more - efficient than invalidating the specified range. If Length is 0, the no instruction - cache lines are invalidated. Address is returned. - This function is only available on IPF. - - @param Address The base address of the instruction cache lines to - invalidate. If the CPU is in a physical addressing mode, then - Address is a physical address. If the CPU is in a virtual - addressing mode, then Address is a virtual address. - - @param Length The number of bytes to invalidate from the instruction cache. - - @return Address - -**/ -VOID * -EFIAPI -InternalFlushCacheRange ( - IN VOID *Address, - IN UINTN Length - ); - #else #endif |