diff options
author | raywu <raywu0301@gmail.com> | 2018-06-15 00:00:50 +0800 |
---|---|---|
committer | raywu <raywu0301@gmail.com> | 2018-06-15 00:00:50 +0800 |
commit | b7c51c9cf4864df6aabb99a1ae843becd577237c (patch) | |
tree | eebe9b0d0ca03062955223097e57da84dd618b9a /EDK/Foundation/Framework/Ppi/Variable | |
download | zprj-master.tar.xz |
Diffstat (limited to 'EDK/Foundation/Framework/Ppi/Variable')
-rw-r--r-- | EDK/Foundation/Framework/Ppi/Variable/Variable.c | 29 | ||||
-rw-r--r-- | EDK/Foundation/Framework/Ppi/Variable/Variable.h | 69 |
2 files changed, 98 insertions, 0 deletions
diff --git a/EDK/Foundation/Framework/Ppi/Variable/Variable.c b/EDK/Foundation/Framework/Ppi/Variable/Variable.c new file mode 100644 index 0000000..77d8359 --- /dev/null +++ b/EDK/Foundation/Framework/Ppi/Variable/Variable.c @@ -0,0 +1,29 @@ +/*++ + +Copyright (c) 2004, Intel Corporation +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. + +Module Name: + + Variable.c + +Abstract: + + Boot Mode PPI GUID as defined in PEI EAS + +--*/ + +#include "Tiano.h" +#include "PeiBind.h" +#include "PeiApi.h" +#include EFI_PPI_DEFINITION (Variable) + +EFI_GUID gPeiReadOnlyVariablePpiGuid = PEI_READ_ONLY_VARIABLE_ACCESS_PPI_GUID; + +EFI_GUID_STRING(&gPeiReadOnlyVariablePpiGuid, "Variable", "Read Only Variable PPI"); diff --git a/EDK/Foundation/Framework/Ppi/Variable/Variable.h b/EDK/Foundation/Framework/Ppi/Variable/Variable.h new file mode 100644 index 0000000..90965cb --- /dev/null +++ b/EDK/Foundation/Framework/Ppi/Variable/Variable.h @@ -0,0 +1,69 @@ +/*++ + +Copyright (c) 2004, Intel Corporation +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. + +Module Name: + + Variable.h + +Abstract: + + Read-only Variable Service PPI as defined in Tiano + +--*/ + +#ifndef _PEI_READ_ONLY_VARIABLE_PPI_H +#define _PEI_READ_ONLY_VARIABLE_PPI_H + +#include "EfiVariable.h" //;;## ...AMI_OVERRIDE... Support PI1.x + +#define PEI_READ_ONLY_VARIABLE_ACCESS_PPI_GUID \ + { \ + 0x3cdc90c6, 0x13fb, 0x4a75, 0x9e, 0x79, 0x59, 0xe9, 0xdd, 0x78, 0xb9, 0xfa \ + } + +// +// Variable attributes +// +//;;## ...AMI_OVERRIDE... Support PI1.x #define EFI_VARIABLE_NON_VOLATILE 0x00000001 +//;;## ...AMI_OVERRIDE... Support PI1.x #define EFI_VARIABLE_BOOTSERVICE_ACCESS 0x00000002 +//;;## ...AMI_OVERRIDE... Support PI1.x #define EFI_VARIABLE_RUNTIME_ACCESS 0x00000004 +//;;## ...AMI_OVERRIDE... Support PI1.x #define EFI_VARIABLE_READ_ONLY 0x00000008 + +typedef +EFI_STATUS +(EFIAPI *PEI_GET_VARIABLE) ( + IN EFI_PEI_SERVICES **PeiServices, + IN CHAR16 *VariableName, + IN EFI_GUID * VendorGuid, + OUT UINT32 *Attributes OPTIONAL, + IN OUT UINTN *DataSize, + OUT VOID *Data + ); + +typedef +EFI_STATUS +(EFIAPI *PEI_GET_NEXT_VARIABLE_NAME) ( + IN EFI_PEI_SERVICES **PeiServices, + IN OUT UINTN *VariableNameSize, + IN OUT CHAR16 *VariableName, + IN OUT EFI_GUID * VendorGuid + ); + +typedef struct PEI_READ_ONLY_VARIABLE_PPI { + PEI_GET_VARIABLE PeiGetVariable; + PEI_GET_NEXT_VARIABLE_NAME PeiGetNextVariableName; +} PEI_READ_ONLY_VARIABLE_PPI; + +EFI_FORWARD_DECLARATION (PEI_MASTER_BOOT_MODE_PPI); + +extern EFI_GUID gPeiReadOnlyVariablePpiGuid; + +#endif |