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