]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkCompatibilityPkg/Compatibility/ReadOnlyVariable2OnReadOnlyVariableThunk/ReadOnlyVariable2OnReadOnlyVariableThunk.c
EdkCompatibilityPkg: Remove EdkCompatibilityPkg
[mirror_edk2.git] / EdkCompatibilityPkg / Compatibility / ReadOnlyVariable2OnReadOnlyVariableThunk / ReadOnlyVariable2OnReadOnlyVariableThunk.c
diff --git a/EdkCompatibilityPkg/Compatibility/ReadOnlyVariable2OnReadOnlyVariableThunk/ReadOnlyVariable2OnReadOnlyVariableThunk.c b/EdkCompatibilityPkg/Compatibility/ReadOnlyVariable2OnReadOnlyVariableThunk/ReadOnlyVariable2OnReadOnlyVariableThunk.c
deleted file mode 100644 (file)
index 677c488..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-/** @file\r
-Module produce EFI_PEI_READ_ONLY_VARIABLE2_PPI on top of EFI_PEI_READ_ONLY_VARIABLE_PPI.\r
-UEFI PI Spec supersedes Intel's Framework Specs. \r
-EFI_PEI_READ_ONLY_VARIABLE_PPI defined in Intel Framework Pkg is replaced by EFI_PEI_READ_ONLY_VARIABLE2_PPI\r
-in MdePkg.\r
-This module produces EFI_PEI_READ_ONLY_VARIABLE2_PPI on top of EFI_PEI_READ_ONLY_VARIABLE_PPI. \r
-This module is used on platform when both of these two conditions are true:\r
-1) Framework module produces EFI_PEI_READ_ONLY_VARIABLE_PPI is present.\r
-2) The platform has PI modules that only consumes EFI_PEI_READ_ONLY_VARIABLE2_PPI.\r
-\r
-This module can't be used together with ReadOnlyVariableToReadOnlyVariable2Thunk module.\r
-\r
-\r
-Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials\r
-are licensed and made available under the terms and conditions of the BSD License\r
-which accompanies this distribution.  The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
-Module Name:\r
-\r
-**/\r
-\r
-#include <PiPei.h>\r
-#include <Ppi/ReadOnlyVariable2.h>\r
-#include <Ppi/ReadOnlyVariable.h>\r
-#include <Library/DebugLib.h>\r
-#include <Library/PeiServicesTablePointerLib.h>\r
-#include <Library/PeiServicesLib.h>\r
-\r
-/**\r
-  Provide the read variable functionality of the variable services.\r
-\r
-  @param  This                  A pointer to this instance of the EFI_PEI_READ_ONLY_VARIABLE2_PPI.\r
-  @param  VariableName          A pointer to a null-terminated string that is the variable's name.\r
-  @param  VariableGuid          A pointer to an EFI_GUID that is the variable's GUID. The combination of\r
-                                VariableGuid and VariableName must be unique.\r
-  @param  Attributes            If non-NULL, on return, points to the variable's attributes.\r
-  @param  DataSize              On entry, points to the size in bytes of the Data buffer.\r
-                                On return, points to the size of the data returned in Data.\r
-  @param  Data                  Points to the buffer which will hold the returned variable value.\r
-\r
-  @retval EFI_SUCCESS           The interface could be successfully installed\r
-  @retval EFI_NOT_FOUND         The variable could not be discovered\r
-  @retval EFI_BUFFER_TOO_SMALL  The caller buffer is not large enough\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PeiGetVariable (\r
-  IN CONST  EFI_PEI_READ_ONLY_VARIABLE2_PPI *This,\r
-  IN CONST  CHAR16                          *VariableName,\r
-  IN CONST  EFI_GUID                        *VariableGuid,\r
-  OUT       UINT32                          *Attributes,\r
-  IN OUT    UINTN                           *DataSize,\r
-  OUT       VOID                            *Data\r
-  )\r
-{\r
-  EFI_STATUS                     Status;\r
-  EFI_PEI_READ_ONLY_VARIABLE_PPI *ReadOnlyVariable;\r
-\r
-  Status = PeiServicesLocatePpi (\r
-             &gEfiPeiReadOnlyVariablePpiGuid,\r
-             0,\r
-             NULL,\r
-             (VOID **)&ReadOnlyVariable\r
-             );\r
-  ASSERT_EFI_ERROR (Status);\r
-\r
-  return ReadOnlyVariable->PeiGetVariable (\r
-                             (EFI_PEI_SERVICES **) GetPeiServicesTablePointer (),\r
-                             (CHAR16 *)VariableName,\r
-                             (EFI_GUID *)VariableGuid,\r
-                             Attributes,\r
-                             DataSize,\r
-                             Data\r
-                             );\r
-}\r
-\r
-/**\r
-  Provide the get next variable functionality of the variable services.\r
-\r
-  @param  This              A pointer to this instance of the EFI_PEI_READ_ONLY_VARIABLE2_PPI.\r
-\r
-  @param  VariableNameSize  On entry, points to the size of the buffer pointed to by VariableName.\r
-  @param  VariableName      On entry, a pointer to a null-terminated string that is the variable's name.\r
-                            On return, points to the next variable's null-terminated name string.\r
-\r
-  @param  VariableGuid      On entry, a pointer to an EFI_GUID that is the variable's GUID. \r
-                            On return, a pointer to the next variable's GUID.\r
-\r
-  @retval EFI_SUCCESS       The interface could be successfully installed\r
-  @retval EFI_NOT_FOUND     The variable could not be discovered\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PeiGetNextVariableName (\r
-  IN CONST  EFI_PEI_READ_ONLY_VARIABLE2_PPI *This,\r
-  IN OUT UINTN                              *VariableNameSize,\r
-  IN OUT CHAR16                             *VariableName,\r
-  IN OUT EFI_GUID                           *VariableGuid\r
-  )\r
-{\r
-  EFI_STATUS                     Status;\r
-  EFI_PEI_READ_ONLY_VARIABLE_PPI *ReadOnlyVariable;\r
-\r
-  Status = PeiServicesLocatePpi (\r
-             &gEfiPeiReadOnlyVariablePpiGuid,\r
-             0,\r
-             NULL,\r
-             (VOID **)&ReadOnlyVariable\r
-             );\r
-  ASSERT_EFI_ERROR (Status);\r
-\r
-  return ReadOnlyVariable->PeiGetNextVariableName (\r
-                             (EFI_PEI_SERVICES **) GetPeiServicesTablePointer (),\r
-                             VariableNameSize,\r
-                             VariableName,\r
-                             VariableGuid\r
-                             );\r
-}\r
-\r
-//\r
-// Module globals\r
-//\r
-EFI_PEI_READ_ONLY_VARIABLE2_PPI mVariablePpi = {\r
-  PeiGetVariable,\r
-  PeiGetNextVariableName\r
-};\r
-\r
-EFI_PEI_PPI_DESCRIPTOR     mPpiListVariable = {\r
-  (EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST),\r
-  &gEfiPeiReadOnlyVariable2PpiGuid,\r
-  &mVariablePpi\r
-};\r
-\r
-/**\r
-  User entry for this PEIM driver.\r
-  \r
-  @param  FileHandle  Handle of the file being invoked.\r
-  @param  PeiServices Describes the list of possible PEI Services.\r
-\r
-  @retval EFI_SUCCESS ReadOnlyVariable2 PPI is successfully installed.\r
-  @return Others      ReadOnlyVariable2 PPI is not successfully installed.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PeimInitializeReadOnlyVariable2 (\r
-  IN EFI_PEI_FILE_HANDLE       FileHandle,\r
-  IN CONST EFI_PEI_SERVICES    **PeiServices\r
-  )\r
-{\r
-  //\r
-  // This thunk module can only be used together with a PI PEI core, as we \r
-  // assume PeiServices Pointer Table can be located in a standard way defined\r
-  // in PI spec.\r
-  //\r
-  ASSERT ((*PeiServices)->Hdr.Revision >= 0x00010000);\r
-\r
-  //\r
-  // Developer should make sure ReadOnlyVariable2ToReadOnlyVariable module is not present. or else, the call chain will form a\r
-  // infinite loop: ReadOnlyVariable2 -> ReadOnlyVariable -> ReadOnlyVariable2 -> .....\r
-  //\r
-  //\r
-  // Publish the variable capability to other modules\r
-  //\r
-  return PeiServicesInstallPpi (&mPpiListVariable);\r
-}\r