]> git.proxmox.com Git - mirror_edk2.git/blob - EdkCompatibilityPkg/Foundation/Framework/Ppi/Variable2/Variable2.h
52e5980749de418ab24baa8e1fe6dd76b89e5a56
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Framework / Ppi / Variable2 / Variable2.h
1 /*++
2
3 Copyright (c) 2007, 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 Variable2.h
15
16 Abstract:
17
18 Read-only Variable2 Service PPI as defined in PI1.0
19
20 --*/
21
22 #ifndef _PEI_READ_ONLY_VARIABLE2_PPI_H
23 #define _PEI_READ_ONLY_VARIABLE2_PPI_H
24
25 #include "EfiVariable.h"
26
27 #define EFI_PEI_READ_ONLY_VARIABLE2_PPI_GUID \
28 { \
29 0x2ab86ef5, 0xecb5, 0x4134, 0xb5, 0x56, 0x38, 0x54, 0xca, 0x1f, 0xe1, 0xb4 \
30 }
31
32 EFI_FORWARD_DECLARATION (EFI_PEI_READ_ONLY_VARIABLE2_PPI);
33
34 typedef
35 EFI_STATUS
36 (EFIAPI *EFI_PEI_GET_VARIABLE2) (
37 IN CONST EFI_PEI_READ_ONLY_VARIABLE2_PPI *This,
38 IN CONST CHAR16 *VariableName,
39 IN CONST EFI_GUID *VariableGuid,
40 OUT UINT32 *Attributes,
41 IN OUT UINTN *DataSize,
42 OUT VOID *Data
43 );
44
45 typedef
46 EFI_STATUS
47 (EFIAPI *EFI_PEI_GET_NEXT_VARIABLE_NAME2) (
48 IN CONST EFI_PEI_READ_ONLY_VARIABLE2_PPI *This,
49 IN OUT UINTN *VariableNameSize,
50 IN OUT CHAR16 *VariableName,
51 IN OUT EFI_GUID *VariableGuid
52 );
53
54 typedef struct _EFI_PEI_READ_ONLY_VARIABLE2_PPI {
55 EFI_PEI_GET_VARIABLE2 GetVariable;
56 EFI_PEI_GET_NEXT_VARIABLE_NAME2 GetNextVariableName;
57 } EFI_PEI_READ_ONLY_VARIABLE2_PPI;
58
59 extern EFI_GUID gPeiReadOnlyVariable2PpiGuid;
60
61 #endif