]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Include/Ppi/BaseMemoryTest.h
e769a9929f1769fa51300809604b736d0179b641
[mirror_edk2.git] / MdeModulePkg / Include / Ppi / BaseMemoryTest.h
1 /** @file
2 Pei memory test PPI used to Perform memory test in PEI phase.
3
4 Copyright (c) 2006 - 2008, Intel Corporation. <BR>
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef __BASE_MEMORY_TEST_H__
16 #define __BASE_MEMORY_TEST_H__
17
18 #define PEI_BASE_MEMORY_TEST_GUID \
19 { 0xb6ec423c, 0x21d2, 0x490d, {0x85, 0xc6, 0xdd, 0x58, 0x64, 0xea, 0xa6, 0x74 } }
20
21 typedef struct _PEI_BASE_MEMORY_TEST_PPI PEI_BASE_MEMORY_TEST_PPI;
22
23 typedef enum {
24 Ignore,
25 Quick,
26 Sparse,
27 Extensive
28 } PEI_MEMORY_TEST_OP;
29
30 typedef
31 EFI_STATUS
32 (EFIAPI *PEI_BASE_MEMORY_TEST) (
33 IN EFI_PEI_SERVICES **PeiServices,
34 IN PEI_BASE_MEMORY_TEST_PPI * This,
35 IN EFI_PHYSICAL_ADDRESS BeginAddress,
36 IN UINT64 MemoryLength,
37 IN PEI_MEMORY_TEST_OP Operation,
38 OUT EFI_PHYSICAL_ADDRESS * ErrorAddress
39 );
40
41 struct _PEI_BASE_MEMORY_TEST_PPI {
42 PEI_BASE_MEMORY_TEST BaseMemoryTest;
43 };
44
45 extern EFI_GUID gPeiBaseMemoryTestPpiGuid;
46
47 #endif