]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkNt32Pkg/Pei/PcdEmulator/PcdEmulator.c
Remove the dead files.
[mirror_edk2.git] / EdkNt32Pkg / Pei / PcdEmulator / PcdEmulator.c
diff --git a/EdkNt32Pkg/Pei/PcdEmulator/PcdEmulator.c b/EdkNt32Pkg/Pei/PcdEmulator/PcdEmulator.c
deleted file mode 100644 (file)
index 7639904..0000000
+++ /dev/null
@@ -1,657 +0,0 @@
-/*++\r
-\r
-Copyright (c) 2006, Intel Corporation                                                         \r
-All rights reserved. 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
-\r
-Module Name:\r
-  PcdEmulator.c\r
-\r
-Abstract:\r
-  Platform Configuration Database (PCD) Service PEIM\r
-\r
---*/\r
-\r
-#include <PcdEmulator.h>\r
-\r
-//\r
-// BugBug: PEI early phase does not support global variable!!!\r
-//         This is only a temperary solution.\r
-//\r
-\r
-UINTN                    mSkuId = 0;\r
-\r
-\r
-STATIC EMULATED_PCD_DATABASE_EX *\r
-GetPcdDataBaseEx (\r
-  VOID\r
-) {\r
-  EFI_HOB_GUID_TYPE         *GuidHob;\r
-  EMULATED_PCD_DATABASE_EX  *EmulatedPcdDatabaseEx;\r
-\r
-  GuidHob = GetFirstGuidHob (&gPcdHobGuid);\r
-  EmulatedPcdDatabaseEx = (EMULATED_PCD_DATABASE_EX *) GET_GUID_HOB_DATA(GuidHob);\r
-\r
-  return EmulatedPcdDatabaseEx;\r
-}\r
-\r
-STATIC UINTN \r
-GetPcdDataBaseExEntryCount (\r
-       EMULATED_PCD_DATABASE_EX * Database\r
-) {\r
-       return Database->Count;\r
-}\r
-\r
-STATIC UINTN \r
-GetPcdDataBaseExSize (\r
-       EMULATED_PCD_DATABASE_EX * Database\r
-) {\r
-       UINTN Size;\r
-       \r
-       Size = sizeof (Database->Count)\r
-                       + (sizeof (Database->Entry[0]) * Database->Count);\r
-                       \r
-       return Size;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSetSku (\r
-  IN  UINTN             SkuId\r
-  )\r
-{\r
-  mSkuId = SkuId;\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-UINT8\r
-EFIAPI\r
-PcdEmulatorGet8 (\r
-  IN  UINTN  TokenNumber\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-  ASSERT (Pcd->DatumSize == 1);\r
-\r
-  return (UINT8)Pcd->Datum;\r
-}\r
-\r
-UINT16\r
-EFIAPI\r
-PcdEmulatorGet16 (\r
-  IN  UINTN  TokenNumber\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-  ASSERT (Pcd->DatumSize == 2);\r
-\r
-  return (UINT16)Pcd->Datum;\r
-}\r
-\r
-UINT32\r
-EFIAPI\r
-PcdEmulatorGet32 (\r
-  IN  UINTN  TokenNumber\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-  ASSERT (Pcd->DatumSize == 4);\r
-\r
-  return (UINT32)Pcd->Datum;\r
-}\r
-\r
-UINT64\r
-EFIAPI\r
-PcdEmulatorGet64 (\r
-  IN  UINTN  TokenNumber\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-  ASSERT (Pcd->DatumSize == sizeof (UINT64));\r
-\r
-  return (UINT64)Pcd->Datum;\r
-}\r
-\r
-VOID *\r
-EFIAPI\r
-PcdEmulatorGetPtr (\r
-  IN  UINTN  TokenNumber\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-\r
-  return (VOID *)(UINTN)Pcd->ExtendedData;\r
-}\r
-\r
-BOOLEAN\r
-EFIAPI\r
-PcdEmulatorGetBoolean (\r
-  IN  UINTN  TokenNumber\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-  ASSERT (Pcd->DatumSize == 1);\r
-\r
-  return (BOOLEAN)Pcd->Datum;\r
-}\r
-\r
-UINTN\r
-EFIAPI\r
-PcdEmulatorGetSize (\r
-  IN  UINTN  TokenNumber\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-  return Pcd->DatumSize;\r
-}\r
-\r
-UINT8\r
-EFIAPI\r
-PcdEmulatorGet8Ex (\r
-  IN  CONST EFI_GUID      *PcdDataBaseName,\r
-  IN  UINTN               TokenNumber\r
-  )\r
-{\r
-  ASSERT (FALSE);\r
-  return 0;\r
-}\r
-\r
-UINT16\r
-EFIAPI\r
-PcdEmulatorGet16Ex (\r
-  IN  CONST EFI_GUID      *PcdDataBaseName,\r
-  IN  UINTN               TokenNumber\r
-  )\r
-{\r
-  ASSERT (FALSE);\r
-  return 0;\r
-}\r
-\r
-UINT32\r
-EFIAPI\r
-PcdEmulatorGet32Ex (\r
-  IN  CONST EFI_GUID      *PcdDataBaseName,\r
-  IN  UINTN               TokenNumber\r
-  )\r
-{\r
-  ASSERT (FALSE);\r
-  return 0;\r
-}\r
-\r
-UINT64\r
-EFIAPI\r
-PcdEmulatorGet64Ex (\r
-  IN  CONST EFI_GUID      *PcdDataBaseName,\r
-  IN  UINTN               TokenNumber\r
-  )\r
-{\r
-  ASSERT (FALSE);\r
-  return 0;\r
-}\r
-\r
-VOID *\r
-EFIAPI\r
-PcdEmulatorGetPtrEx (\r
-  IN  CONST EFI_GUID    *PcdDataBaseName,\r
-  IN  UINTN             TokenNumber\r
-  )\r
-{\r
-  ASSERT (FALSE);\r
-  return 0;\r
-}\r
-\r
-BOOLEAN\r
-EFIAPI\r
-PcdEmulatorGetBooleanEx (\r
-  IN  CONST EFI_GUID    *PcdDataBaseName,\r
-  IN  UINTN             TokenNumber\r
-  )\r
-{\r
-  ASSERT (FALSE);\r
-  return 0;\r
-}\r
-\r
-UINTN\r
-EFIAPI\r
-PcdEmulatorGetSizeEx (\r
-  IN  CONST EFI_GUID    *PcdDataBaseName,\r
-  IN  UINTN             TokenNumber\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-  return Pcd->DatumSize;\r
-}\r
-\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSet8 (\r
-  IN UINTN             TokenNumber,\r
-  IN UINT8             Value\r
-  )\r
-{  \r
-\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-\r
-  ASSERT (Pcd->DatumSize == sizeof (UINT8));\r
-\r
-  Pcd->Datum = Value;\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSet16 (\r
-  IN UINTN             TokenNumber,\r
-  IN UINT16            Value\r
-  )\r
-{  \r
-\r
-  ASSERT (FALSE);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSet32 (\r
-  IN UINTN              TokenNumber,\r
-  IN UINT32             Value\r
-  )\r
-{  \r
-\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-\r
-  ASSERT (Pcd->DatumSize == sizeof (UINT32));\r
-\r
-  Pcd->Datum = Value;\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSet64 (\r
-  IN UINTN             TokenNumber,\r
-  IN UINT64            Value\r
-  )\r
-{  \r
-\r
-  ASSERT (FALSE);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSetPtr (\r
-  IN UINTN             TokenNumber,\r
-  IN CONST VOID        *Value\r
-  )\r
-{  \r
-\r
-  ASSERT (FALSE);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSetBoolean (\r
-  IN UINTN             TokenNumber,\r
-  IN BOOLEAN           Value\r
-  )\r
-{  \r
-\r
-  ASSERT (FALSE);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSet8Ex (\r
-  IN CONST EFI_GUID    *Guid,\r
-  IN UINTN             TokenNumber,\r
-  IN UINT8             Value\r
-  )\r
-{  \r
-\r
-  ASSERT (FALSE);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSet16Ex (\r
-  IN CONST EFI_GUID    *Guid,\r
-  IN UINTN             TokenNumber,\r
-  IN UINT16            Value\r
-  )\r
-{  \r
-\r
-  ASSERT (FALSE);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSet32Ex (\r
-  IN CONST EFI_GUID    *Guid,\r
-  IN UINTN             TokenNumber,\r
-  IN UINT32             Value\r
-  )\r
-{  \r
-\r
-  ASSERT (FALSE);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSet64Ex (\r
-  IN CONST EFI_GUID    *Guid,\r
-  IN UINTN             TokenNumber,\r
-  IN UINT64            Value\r
-  )\r
-{  \r
-\r
-  ASSERT (FALSE);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSetPtrEx (\r
-  IN CONST EFI_GUID    *Guid,\r
-  IN UINTN             TokenNumber,\r
-  IN CONST VOID        *Value\r
-  )\r
-{  \r
-\r
-  ASSERT (FALSE);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorSetBooleanEx (\r
-  IN CONST EFI_GUID    *Guid,\r
-  IN UINTN             TokenNumber,\r
-  IN BOOLEAN           Value\r
-  )\r
-{  \r
-\r
-  ASSERT (FALSE);\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorCallBackOnSet (\r
-  IN  UINTN               TokenNumber,\r
-  IN  CONST EFI_GUID      *Guid, OPTIONAL\r
-  IN  PCD_PPI_CALLBACK    CallBackFunction\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-\r
-  if (Pcd->CallBackListSize == Pcd->CallBackEntries) {\r
-    return EFI_OUT_OF_RESOURCES;\r
-  }\r
-\r
-  Pcd->CallBackList[Pcd->CallBackEntries++] = CallBackFunction;\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorUnregisterCallBackOnSet (\r
-  IN  UINTN                   TokenNumber,\r
-  IN  CONST EFI_GUID          *Guid, OPTIONAL\r
-  IN  PCD_PPI_CALLBACK        CallBackfunction\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX  *Pcd;\r
-  UINT32                 Index;\r
-\r
-  Pcd = GetPcdEntry (TokenNumber);\r
-  ASSERT (Pcd != NULL);\r
-\r
-  for (Index = 0; Index < Pcd->CallBackListSize; Index++) {\r
-    if (Pcd->CallBackList[Index] == CallBackfunction) {\r
-      Pcd->CallBackList[Index] = NULL;\r
-      return EFI_SUCCESS;\r
-    }\r
-  }\r
-\r
-  return EFI_NOT_FOUND;\r
-}\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PcdEmulatorGetNextToken (\r
-  IN  CONST EFI_GUID      *Guid, OPTIONAL\r
-  IN  UINTN               *Token\r
-  )\r
-{\r
-  EMULATED_PCD_ENTRY_EX    *Pcd;\r
-  EMULATED_PCD_ENTRY_EX    *LastPcdEntry;\r
-  EMULATED_PCD_DATABASE_EX *PcdDatabase;\r
-  EMULATED_PCD_ENTRY_EX    *PcdEntry;\r
-\r
-  PcdDatabase = GetPcdDataBaseEx ();  \r
-  PcdEntry    = PcdDatabase->Entry;\r
-\r
-  if (*Token == PCD_INVALID_TOKEN) {\r
-    //\r
-    // BugBug: Due to variable size array, ensure we convert this to a reasonable database\r
-    //         that can accomodate array references for simplicity's sake\r
-    *Token = PcdEntry[0].Token;\r
-    return EFI_SUCCESS;\r
-  }\r
-\r
-  Pcd = GetPcdEntry (*Token);\r
-  if (Pcd == NULL) {\r
-    return EFI_NOT_FOUND;\r
-  }\r
-\r
-  LastPcdEntry = PcdEntry + GetPcdDataBaseExEntryCount (PcdDatabase);\r
-  if (++Pcd >= LastPcdEntry) {\r
-    return EFI_NOT_FOUND;\r
-  }\r
-  \r
-  *Token = Pcd->Token;\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-PCD_PPI mPcdPpiInstance = {\r
-  PcdEmulatorSetSku,\r
-\r
-  PcdEmulatorGet8,\r
-  PcdEmulatorGet16,          \r
-  PcdEmulatorGet32,          \r
-  PcdEmulatorGet64,          \r
-  PcdEmulatorGetPtr,         \r
-  PcdEmulatorGetBoolean,     \r
-  PcdEmulatorGetSize,\r
-\r
-  PcdEmulatorGet8Ex,\r
-  PcdEmulatorGet16Ex,          \r
-  PcdEmulatorGet32Ex,          \r
-  PcdEmulatorGet64Ex,          \r
-  PcdEmulatorGetPtrEx,         \r
-  PcdEmulatorGetBooleanEx,     \r
-  PcdEmulatorGetSizeEx,\r
-  \r
-  PcdEmulatorSet8,\r
-  PcdEmulatorSet16,          \r
-  PcdEmulatorSet32,          \r
-  PcdEmulatorSet64,          \r
-  PcdEmulatorSetPtr,         \r
-  PcdEmulatorSetBoolean,     \r
-\r
-  PcdEmulatorSet8Ex,\r
-  PcdEmulatorSet16Ex,          \r
-  PcdEmulatorSet32Ex,          \r
-  PcdEmulatorSet64Ex,          \r
-  PcdEmulatorSetPtrEx,         \r
-  PcdEmulatorSetBooleanEx,     \r
-\r
-  PcdEmulatorCallBackOnSet,\r
-  PcdEmulatorUnregisterCallBackOnSet,\r
-  PcdEmulatorGetNextToken\r
-};\r
-\r
-STATIC EFI_PEI_PPI_DESCRIPTOR     mPpiPCD = {\r
-  (EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST),\r
-  &gPcdPpiGuid,\r
-  &mPcdPpiInstance\r
-};\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PeimPcdEmulatorEntry (\r
-  IN EFI_FFS_FILE_HEADER      *FfsHeader,\r
-  IN EFI_PEI_SERVICES         **PeiServices\r
-  )\r
-{\r
-  EFI_STATUS                  Status;\r
-  UINTN                       Index;\r
-  UINTN                       Count;\r
-  UINTN                       Calculation;\r
-  UINT8                       *AllocatedBuffer;\r
-  EMULATED_PCD_DATABASE_EX    *EmulatedPcdDatabaseEx;\r
-  EMULATED_PCD_ENTRY_EX       *EmulatedPcdEntryEx;\r
-\r
-  //\r
-  // BugBug: Normally, we would read an FFS file for this data\r
-  // We need to remember, that when we read the FFS file, items such as the VariableName will not be encoded as a pointer\r
-  // but as an array of content.  In this emulation, our init is encoding this data as a pointer.\r
-  // In the FFS version, we will depend on the proper Entry Count in the FFS data since the structures will\r
-  // now be variable length.\r
-  //\r
-  //\r
-\r
-  //\r
-  // We should now read from the FFS file into the cache - for now, we fake this.\r
-  //\r
-  Count = GetPcdDataBaseSize () / sizeof (EMULATED_PCD_ENTRY);\r
-\r
-  //\r
-  // Let's now determine how big of a buffer we need for our database\r
-  // For the FFS version, we need to calculate/consider the VariableName/ExtendedData size!!!\r
-  //\r
-  Calculation = sizeof (UINTN) + (Count * sizeof (EMULATED_PCD_ENTRY_EX));\r
-\r
-  EmulatedPcdDatabaseEx = (EMULATED_PCD_DATABASE_EX *) BuildGuidHob (&gPcdHobGuid, Calculation);\r
-\r
-  EmulatedPcdDatabaseEx->Count = Count;\r
-  EmulatedPcdEntryEx    = EmulatedPcdDatabaseEx->Entry;\r
-\r
-  AllocatedBuffer = AllocatePool (Count * sizeof (PCD_PPI_CALLBACK) * MAX_PCD_CALLBACK);\r
-  ASSERT (AllocatedBuffer != NULL);  \r
-\r
-  for (Index = 0; Index < Count; Index++) {\r
-    //\r
-    // Copy from source to our own allocated buffer - normally an FFS read\r
-    //\r
-    (*PeiServices)->CopyMem (\r
-                      (VOID *) (EmulatedPcdEntryEx + Index),\r
-                      (VOID *) (gEmulatedPcdEntry + Index),\r
-                      sizeof (EMULATED_PCD_ENTRY)\r
-                      );\r
-\r
-    //\r
-    // All the CallBackList worker functions refer to this CallBackList as CallBackList[CallbackEntry]\r
-    // so we seed the same buffer address here.\r
-    //\r
-    EmulatedPcdEntryEx[Index].CallBackList = (PCD_PPI_CALLBACK *)AllocatedBuffer;\r
-    AllocatedBuffer+= (sizeof (PCD_PPI_CALLBACK) * MAX_PCD_CALLBACK);\r
-    EmulatedPcdEntryEx[Index].CallBackEntries  = 0;\r
-    EmulatedPcdEntryEx[Index].CallBackListSize = MAX_PCD_CALLBACK;\r
-  }\r
-\r
-  //\r
-  // Install PCD service PPI\r
-  //\r
-  Status = PeiServicesInstallPpi (&mPpiPCD);\r
-\r
-  ASSERT_EFI_ERROR (Status);\r
-  return Status;\r
-}\r
-\r
-\r
-EMULATED_PCD_ENTRY_EX *\r
-GetPcdEntry (\r
-  IN      UINTN    TokenNumber\r
-  )\r
-{\r
-  UINTN                     Index;\r
-  UINTN                     Count;\r
-  EMULATED_PCD_DATABASE_EX  *EmulatedPcdDatabaseEx;\r
-  EMULATED_PCD_ENTRY_EX     *EmulatedPcdEntryEx;\r
-\r
-  CpuBreakpoint (); \r
-\r
-  EmulatedPcdDatabaseEx = GetPcdDataBaseEx ();  \r
-  //\r
-  // BugBug: This Count will change when we flip over to FFS version\r
-  //\r
-  Count = EmulatedPcdDatabaseEx->Count;\r
-  EmulatedPcdEntryEx = EmulatedPcdDatabaseEx->Entry;\r
-  for (Index = 0; Index < Count; Index++) {\r
-    if (EmulatedPcdEntryEx[Index].Token == TokenNumber) {\r
-      return &EmulatedPcdEntryEx[Index];\r
-    }\r
-  }\r
-  return NULL;\r
-}\r
-\r
-\r