/** @file | |
* | |
* Copyright (c) 2011, ARM Limited. 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. | |
* | |
**/ | |
#ifndef __ARM_MP_CORE_INFO_PPI_H__ | |
#define __ARM_MP_CORE_INFO_PPI_H__ | |
#include <Guid/ArmMpCoreInfo.h> | |
#define ARM_MP_CORE_INFO_PPI_GUID \ | |
{ 0x6847cc74, 0xe9ec, 0x4f8f, {0xa2, 0x9d, 0xab, 0x44, 0xe7, 0x54, 0xa8, 0xfc} } | |
/** | |
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 * ARM_MP_CORE_INFO_GET) ( | |
OUT UINTN *ArmCoreCount, | |
OUT ARM_CORE_INFO **ArmCoreTable | |
); | |
/// | |
/// 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 { | |
ARM_MP_CORE_INFO_GET GetMpCoreInfo; | |
} ARM_MP_CORE_INFO_PPI; | |
extern EFI_GUID gArmMpCoreInfoPpiGuid; | |
extern EFI_GUID gArmMpCoreInfoGuid; | |
#endif |