X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=MdePkg%2FLibrary%2FBaseMemoryLibOptPei%2FMemLibInternals.h;h=3ecbae91ad3d94e6f24c965e7b213020e1a3461b;hb=2f88bd3a1296c522317f1c21377876de63de5be7;hp=f40299b9caa026067741e2cd3d2411167c7c5813;hpb=1fef058f4b8fefc455bb171e4908c3e835b1b492;p=mirror_edk2.git diff --git a/MdePkg/Library/BaseMemoryLibOptPei/MemLibInternals.h b/MdePkg/Library/BaseMemoryLibOptPei/MemLibInternals.h index f40299b9ca..3ecbae91ad 100644 --- a/MdePkg/Library/BaseMemoryLibOptPei/MemLibInternals.h +++ b/MdePkg/Library/BaseMemoryLibOptPei/MemLibInternals.h @@ -9,14 +9,8 @@ BaseMemoryLibOptDxe BaseMemoryLibOptPei - Copyright (c) 2006 - 2009, Intel Corporation
- All rights reserved. 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 - 2016, Intel Corporation. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent **/ @@ -31,9 +25,9 @@ /** Copy Length bytes from Source to Destination. - @param DestinationBuffer Target of copy - @param SourceBuffer Place to copy from - @param Length Number of bytes to copy + @param DestinationBuffer The target of the copy request. + @param SourceBuffer The place to copy from. + @param Length The number of bytes to copy. @return Destination @@ -41,17 +35,17 @@ VOID * EFIAPI InternalMemCopyMem ( - OUT VOID *DestinationBuffer, - IN CONST VOID *SourceBuffer, - IN UINTN Length + OUT VOID *DestinationBuffer, + IN CONST VOID *SourceBuffer, + IN UINTN Length ); /** Set Buffer to Value for Size bytes. - @param Buffer Memory to set. - @param Length Number of bytes to set - @param Value Value of the set operation. + @param Buffer The memory to set. + @param Length The number of bytes to set. + @param Value The value of the set operation. @return Buffer @@ -59,17 +53,17 @@ InternalMemCopyMem ( VOID * EFIAPI InternalMemSetMem ( - OUT VOID *Buffer, - IN UINTN Length, - IN UINT8 Value + OUT VOID *Buffer, + IN UINTN Length, + IN UINT8 Value ); /** Fills a target buffer with a 16-bit value, and returns the target buffer. - @param Buffer Pointer to the target buffer to fill. - @param Length Count of 16-bit value to fill. - @param Value Value with which to fill Length bytes of Buffer. + @param Buffer The pointer to the target buffer to fill. + @param Length The count of 16-bit value to fill. + @param Value The value with which to fill Length bytes of Buffer. @return Buffer @@ -77,17 +71,17 @@ InternalMemSetMem ( VOID * EFIAPI InternalMemSetMem16 ( - OUT VOID *Buffer, - IN UINTN Length, - IN UINT16 Value + OUT VOID *Buffer, + IN UINTN Length, + IN UINT16 Value ); /** Fills a target buffer with a 32-bit value, and returns the target buffer. - @param Buffer Pointer to the target buffer to fill. - @param Length Count of 32-bit value to fill. - @param Value Value with which to fill Length bytes of Buffer. + @param Buffer The pointer to the target buffer to fill. + @param Length The count of 32-bit value to fill. + @param Value The value with which to fill Length bytes of Buffer. @return Buffer @@ -95,17 +89,17 @@ InternalMemSetMem16 ( VOID * EFIAPI InternalMemSetMem32 ( - OUT VOID *Buffer, - IN UINTN Length, - IN UINT32 Value + OUT VOID *Buffer, + IN UINTN Length, + IN UINT32 Value ); /** Fills a target buffer with a 64-bit value, and returns the target buffer. - @param Buffer Pointer to the target buffer to fill. - @param Length Count of 64-bit value to fill. - @param Value Value with which to fill Length bytes of Buffer. + @param Buffer The pointer to the target buffer to fill. + @param Length The count of 64-bit value to fill. + @param Value The value with which to fill Length bytes of Buffer. @return Buffer @@ -113,16 +107,16 @@ InternalMemSetMem32 ( VOID * EFIAPI InternalMemSetMem64 ( - OUT VOID *Buffer, - IN UINTN Length, - IN UINT64 Value + OUT VOID *Buffer, + IN UINTN Length, + IN UINT64 Value ); /** Set Buffer to 0 for Size bytes. - @param Buffer Memory to set. - @param Length Number of bytes to set + @param Buffer The memory to set. + @param Length The number of bytes to set @return Buffer @@ -130,16 +124,16 @@ InternalMemSetMem64 ( VOID * EFIAPI InternalMemZeroMem ( - OUT VOID *Buffer, - IN UINTN Length + OUT VOID *Buffer, + IN UINTN Length ); /** Compares two memory buffers of a given length. - @param DestinationBuffer First memory buffer - @param SourceBuffer Second memory buffer - @param Length Length of DestinationBuffer and SourceBuffer memory + @param DestinationBuffer The first memory buffer. + @param SourceBuffer The second memory buffer. + @param Length The length of DestinationBuffer and SourceBuffer memory regions to compare. Must be non-zero. @return 0 All Length bytes of the two buffers are identical. @@ -150,85 +144,102 @@ InternalMemZeroMem ( INTN EFIAPI InternalMemCompareMem ( - IN CONST VOID *DestinationBuffer, - IN CONST VOID *SourceBuffer, - IN UINTN Length + IN CONST VOID *DestinationBuffer, + IN CONST VOID *SourceBuffer, + IN UINTN Length ); /** Scans a target buffer for an 8-bit value, and returns a pointer to the matching 8-bit value in the target buffer. - @param Buffer Pointer to the target buffer to scan. - @param Length Count of 8-bit value to scan. Must be non-zero. - @param Value Value to search for in the target buffer. + @param Buffer The pointer to the target buffer to scan. + @param Length The count of 8-bit value to scan. Must be non-zero. + @param Value The value to search for in the target buffer. - @return Pointer to the first occurrence or NULL if not found. + @return The pointer to the first occurrence or NULL if not found. **/ CONST VOID * EFIAPI InternalMemScanMem8 ( - IN CONST VOID *Buffer, - IN UINTN Length, - IN UINT8 Value + IN CONST VOID *Buffer, + IN UINTN Length, + IN UINT8 Value ); /** Scans a target buffer for a 16-bit value, and returns a pointer to the matching 16-bit value in the target buffer. - @param Buffer Pointer to the target buffer to scan. - @param Length Count of 16-bit value to scan. Must be non-zero. - @param Value Value to search for in the target buffer. + @param Buffer The pointer to the target buffer to scan. + @param Length The count of 16-bit value to scan. Must be non-zero. + @param Value The value to search for in the target buffer. - @return Pointer to the first occurrence or NULL if not found. + @return The pointer to the first occurrence or NULL if not found. **/ CONST VOID * EFIAPI InternalMemScanMem16 ( - IN CONST VOID *Buffer, - IN UINTN Length, - IN UINT16 Value + IN CONST VOID *Buffer, + IN UINTN Length, + IN UINT16 Value ); /** Scans a target buffer for a 32-bit value, and returns a pointer to the matching 32-bit value in the target buffer. - @param Buffer Pointer to the target buffer to scan. - @param Length Count of 32-bit value to scan. Must be non-zero. - @param Value Value to search for in the target buffer. + @param Buffer The pointer to the target buffer to scan. + @param Length The count of 32-bit value to scan. Must be non-zero. + @param Value The value to search for in the target buffer. - @return Pointer to the first occurrence or NULL if not found. + @return The pointer to the first occurrence or NULL if not found. **/ CONST VOID * EFIAPI InternalMemScanMem32 ( - IN CONST VOID *Buffer, - IN UINTN Length, - IN UINT32 Value + IN CONST VOID *Buffer, + IN UINTN Length, + IN UINT32 Value ); /** Scans a target buffer for a 64-bit value, and returns a pointer to the matching 64-bit value in the target buffer. - @param Buffer Pointer to the target buffer to scan. - @param Length Count of 64-bit value to scan. Must be non-zero. - @param Value Value to search for in the target buffer. + @param Buffer The pointer to the target buffer to scan. + @param Length The count of 64-bit value to scan. Must be non-zero. + @param Value The value to search for in the target buffer. - @return Pointer to the first occurrence or NULL if not found. + @return The pointer to the first occurrence or NULL if not found. **/ CONST VOID * EFIAPI InternalMemScanMem64 ( - IN CONST VOID *Buffer, - IN UINTN Length, - IN UINT64 Value + IN CONST VOID *Buffer, + IN UINTN Length, + IN UINT64 Value + ); + +/** + Checks whether the contents of a buffer are all zeros. + + @param Buffer The pointer to the buffer to be checked. + @param Length The size of the buffer (in bytes) to be checked. + + @retval TRUE Contents of the buffer are all zeros. + @retval FALSE Contents of the buffer are not all zeros. + +**/ +BOOLEAN +EFIAPI +InternalMemIsZeroBuffer ( + IN CONST VOID *Buffer, + IN UINTN Length ); #endif