]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkCompatibilityPkg/Foundation/Library/RuntimeDxe/EfiRuntimeLib/ia32/RuntimeLib.c
Revert back the change. For now, ECP only support build mode with EFI_SPECIFICATION_V...
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Library / RuntimeDxe / EfiRuntimeLib / ia32 / RuntimeLib.c
index 4fb049444cef4c48f48f4043c35e797d9a443280..2367e107595cfc8dc3fa3310ce194cc93a6d67e7 100644 (file)
@@ -1,6 +1,6 @@
 /*++\r
 \r
-Copyright (c) 2005 - 2008, Intel Corporation                                                         \r
+Copyright (c) 2004 - 2008, 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
@@ -42,7 +42,9 @@ EFI_CPU_IO_PROTOCOL         *gCpuIo;
 BOOLEAN                     mEfiAtRuntime = FALSE;\r
 FVB_ENTRY                   *mFvbEntry;\r
 \r
+#if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
 static EFI_STATUS_CODE_PROTOCOL  *gStatusCode = NULL;\r
+#endif\r
 \r
 EFI_STATUS\r
 EfiConvertPointer (\r
@@ -211,10 +213,12 @@ Returns:
   // Update global for Runtime Services Table and IO\r
   //\r
   EfiConvertInternalPointer ((VOID **) &gCpuIo);\r
+#if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
   if (gStatusCode != NULL) {\r
     EfiConvertInternalPointer ((VOID **) &gStatusCode->ReportStatusCode);\r
     EfiConvertInternalPointer ((VOID **) &gStatusCode);\r
   }\r
+#endif\r
   EfiConvertInternalPointer ((VOID **) &mRT);\r
 \r
   //\r
@@ -270,10 +274,12 @@ Returns:
   Status  = EfiLibGetSystemConfigurationTable (&gEfiDxeServicesTableGuid, (VOID **) &gDS);\r
   ASSERT_EFI_ERROR (Status);\r
 \r
+#if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
   Status = gBS->LocateProtocol (&gEfiStatusCodeRuntimeProtocolGuid, NULL, (VOID **)&gStatusCode);\r
   if (EFI_ERROR (Status)) {\r
     gStatusCode = NULL;\r
   }\r
+#endif\r
 \r
   Status = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, (VOID **) &gCpuIo);\r
   if (EFI_ERROR (Status)) {\r
@@ -399,10 +405,12 @@ Returns:
   mRT = SystemTable->RuntimeServices;\r
   ASSERT (mRT != NULL);\r
 \r
+#if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
   Status = gBS->LocateProtocol (&gEfiStatusCodeRuntimeProtocolGuid, NULL, (VOID **)&gStatusCode);\r
   if (EFI_ERROR (Status)) {\r
     gStatusCode = NULL;\r
   }\r
+#endif\r
 \r
   Status  = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, (VOID **) &gCpuIo);\r
   if (EFI_ERROR (Status)) {\r
@@ -656,6 +664,7 @@ Returns:
   return mRT->SetVariable (VariableName, VendorGuid, Attributes, DataSize, Data);\r
 }\r
 \r
+\r
 #if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
 \r
 EFI_STATUS\r
@@ -694,7 +703,6 @@ Returns:
 \r
 #endif\r
 \r
-\r
 EFI_STATUS\r
 EfiGetNextHighMonotonicCount (\r
   OUT UINT32                      *HighCount\r
@@ -781,35 +789,31 @@ Returns:
 --*/\r
 {\r
   EFI_STATUS  Status;\r
-  \r
-  Status = EFI_UNSUPPORTED;\r
 \r
-  if (mRT->Hdr.Revision >= 0x00020000) {\r
-         if (gStatusCode == NULL) {\r
-           if (EfiAtRuntime ()) {\r
-             return EFI_UNSUPPORTED;\r
-           }\r
-           Status = gBS->LocateProtocol (&gEfiStatusCodeRuntimeProtocolGuid, NULL, (VOID **)&gStatusCode);\r
-           if (EFI_ERROR (Status) || gStatusCode == NULL) {\r
-             return EFI_UNSUPPORTED;\r
-           }\r
-         }\r
-         Status = gStatusCode->ReportStatusCode (CodeType, Value, Instance, CallerId, Data);\r
-       } else {\r
-         if (mRT == NULL) {\r
-           return EFI_UNSUPPORTED;\r
-         }\r
-         //\r
-         // Check whether EFI_RUNTIME_SERVICES has Tiano Extension\r
-         //\r
-         Status = EFI_UNSUPPORTED;\r
-#if (EFI_SPECIFICATION_VERSION < 0x00020000)\r
-         if (mRT->Hdr.Revision     == EFI_SPECIFICATION_VERSION     &&\r
-             mRT->Hdr.HeaderSize   == sizeof (EFI_RUNTIME_SERVICES) &&\r
-             mRT->ReportStatusCode != NULL) {\r
+#if (EFI_SPECIFICATION_VERSION >= 0x00020000) \r
+  if (gStatusCode == NULL) {\r
+    if (EfiAtRuntime ()) {\r
+      return EFI_UNSUPPORTED;\r
+    }\r
+    Status = gBS->LocateProtocol (&gEfiStatusCodeRuntimeProtocolGuid, NULL, (VOID **)&gStatusCode);\r
+    if (EFI_ERROR (Status) || gStatusCode == NULL) {\r
+      return EFI_UNSUPPORTED;\r
+    }\r
+  }\r
+  Status = gStatusCode->ReportStatusCode (CodeType, Value, Instance, CallerId, Data);\r
+#else\r
+  if (mRT == NULL) {\r
+    return EFI_UNSUPPORTED;\r
+  }\r
+  //\r
+  // Check whether EFI_RUNTIME_SERVICES has Tiano Extension\r
+  //\r
+  Status = EFI_UNSUPPORTED;\r
+  if (mRT->Hdr.Revision     == EFI_SPECIFICATION_VERSION     &&\r
+      mRT->Hdr.HeaderSize   == sizeof (EFI_RUNTIME_SERVICES) &&\r
+      mRT->ReportStatusCode != NULL) {\r
     Status = mRT->ReportStatusCode (CodeType, Value, Instance, CallerId, Data);\r
+  }\r
 #endif\r
-         }\r
-       }\r
   return Status;\r
 }\r