mirror of
				https://git.proxmox.com/git/mirror_edk2
				synced 2025-11-04 07:10:07 +00:00 
			
		
		
		
	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>
		
			
				
	
	
		
			60 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/** @file
 | 
						|
  This file declares Temporary RAM Support PPI.
 | 
						|
  This Ppi provides the service that migrates temporary RAM into permanent memory.
 | 
						|
 | 
						|
  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
 | 
						|
  SPDX-License-Identifier: BSD-2-Clause-Patent
 | 
						|
 | 
						|
  @par Revision Reference:
 | 
						|
  This PPI is introduced in PI Version 1.0.
 | 
						|
 | 
						|
**/
 | 
						|
 | 
						|
#ifndef __TEMPORARY_RAM_SUPPORT_H__
 | 
						|
#define __TEMPORARY_RAM_SUPPORT_H__
 | 
						|
 | 
						|
///
 | 
						|
/// Note: The GUID name EFI_PEI_TEMPORARY_RAM_SUPPORT_PPI_GUID is different from the current
 | 
						|
///       PI 1.2 spec.
 | 
						|
///
 | 
						|
#define EFI_PEI_TEMPORARY_RAM_SUPPORT_PPI_GUID  \
 | 
						|
  { 0xdbe23aa9, 0xa345, 0x4b97, {0x85, 0xb6, 0xb2, 0x26, 0xf1, 0x61, 0x73, 0x89} }
 | 
						|
 | 
						|
/**
 | 
						|
  This service of the EFI_PEI_TEMPORARY_RAM_SUPPORT_PPI that migrates temporary RAM into
 | 
						|
  permanent memory.
 | 
						|
 | 
						|
  @param PeiServices            Pointer to the PEI Services Table.
 | 
						|
  @param TemporaryMemoryBase    Source Address in temporary memory from which the SEC or PEIM will copy the
 | 
						|
                                Temporary RAM contents.
 | 
						|
  @param PermanentMemoryBase    Destination Address in permanent memory into which the SEC or PEIM will copy the
 | 
						|
                                Temporary RAM contents.
 | 
						|
  @param CopySize               Amount of memory to migrate from temporary to permanent memory.
 | 
						|
 | 
						|
  @retval EFI_SUCCESS           The data was successfully returned.
 | 
						|
  @retval EFI_INVALID_PARAMETER PermanentMemoryBase + CopySize > TemporaryMemoryBase when
 | 
						|
                                TemporaryMemoryBase > PermanentMemoryBase.
 | 
						|
 | 
						|
**/
 | 
						|
typedef
 | 
						|
EFI_STATUS
 | 
						|
(EFIAPI *TEMPORARY_RAM_MIGRATION)(
 | 
						|
  IN CONST EFI_PEI_SERVICES   **PeiServices,
 | 
						|
  IN EFI_PHYSICAL_ADDRESS     TemporaryMemoryBase,
 | 
						|
  IN EFI_PHYSICAL_ADDRESS     PermanentMemoryBase,
 | 
						|
  IN UINTN                    CopySize
 | 
						|
  );
 | 
						|
 | 
						|
///
 | 
						|
/// This service abstracts the ability to migrate contents of the platform early memory store.
 | 
						|
/// Note: The name EFI_PEI_TEMPORARY_RAM_SUPPORT_PPI is different from the current PI 1.2 spec.
 | 
						|
///       This PPI was optional.
 | 
						|
///
 | 
						|
typedef struct {
 | 
						|
  TEMPORARY_RAM_MIGRATION    TemporaryRamMigration;
 | 
						|
} EFI_PEI_TEMPORARY_RAM_SUPPORT_PPI;
 | 
						|
 | 
						|
extern EFI_GUID  gEfiTemporaryRamSupportPpiGuid;
 | 
						|
 | 
						|
#endif
 |