]> git.proxmox.com Git - mirror_edk2.git/blame - ArmPkg/Include/Ppi/ArmMpCoreInfo.h
IntelSiliconPkg/PlatformVTdSample: update ExceptionDevice
[mirror_edk2.git] / ArmPkg / Include / Ppi / ArmMpCoreInfo.h
CommitLineData
44788bae 1/** @file\r
2*\r
3* Copyright (c) 2011, ARM Limited. All rights reserved.\r
4*\r
5* This program and the accompanying materials\r
6* are licensed and made available under the terms and conditions of the BSD License\r
7* which accompanies this distribution. The full text of the license may be found at\r
8* http://opensource.org/licenses/bsd-license.php\r
9*\r
10* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12*\r
13**/\r
14\r
15#ifndef __ARM_MP_CORE_INFO_PPI_H__\r
77d7af47 16#define __ARM_MP_CORE_INFO_PPI_H__\r
44788bae 17\r
18#include <Guid/ArmMpCoreInfo.h>\r
19\r
20#define ARM_MP_CORE_INFO_PPI_GUID \\r
21 { 0x6847cc74, 0xe9ec, 0x4f8f, {0xa2, 0x9d, 0xab, 0x44, 0xe7, 0x54, 0xa8, 0xfc} }\r
22\r
23/**\r
24 This service of the EFI_PEI_TEMPORARY_RAM_SUPPORT_PPI that migrates temporary RAM into\r
25 permanent memory.\r
26\r
27 @param PeiServices Pointer to the PEI Services Table.\r
28 @param TemporaryMemoryBase Source Address in temporary memory from which the SEC or PEIM will copy the\r
29 Temporary RAM contents.\r
30 @param PermanentMemoryBase Destination Address in permanent memory into which the SEC or PEIM will copy the\r
31 Temporary RAM contents.\r
32 @param CopySize Amount of memory to migrate from temporary to permanent memory.\r
33\r
34 @retval EFI_SUCCESS The data was successfully returned.\r
35 @retval EFI_INVALID_PARAMETER PermanentMemoryBase + CopySize > TemporaryMemoryBase when\r
36 TemporaryMemoryBase > PermanentMemoryBase.\r
37\r
38**/\r
39typedef\r
40EFI_STATUS\r
41(EFIAPI * ARM_MP_CORE_INFO_GET) (\r
42 OUT UINTN *ArmCoreCount,\r
43 OUT ARM_CORE_INFO **ArmCoreTable\r
44);\r
45\r
46///\r
47/// This service abstracts the ability to migrate contents of the platform early memory store.\r
48/// Note: The name EFI_PEI_TEMPORARY_RAM_SUPPORT_PPI is different from the current PI 1.2 spec.\r
49/// This PPI was optional.\r
50///\r
51typedef struct {\r
52 ARM_MP_CORE_INFO_GET GetMpCoreInfo;\r
53} ARM_MP_CORE_INFO_PPI;\r
54\r
55extern EFI_GUID gArmMpCoreInfoPpiGuid;\r
56extern EFI_GUID gArmMpCoreInfoGuid;\r
57\r
58#endif\r