From cfc2ba61e499764a7cfbfef4da37f95bd54c2987 Mon Sep 17 00:00:00 2001
From: xli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524>
Date: Wed, 16 Dec 2009 04:50:57 +0000
Subject: Fix the issue that callback function with TPL lower than
 TPL_HIGH_LEVEL cannot handle status code at TPL_HIGH_LEVEL.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9568 6f19259b-4bc3-4df7-8a09-765794883524
---
 .../RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.h    | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

(limited to 'MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.h')

diff --git a/MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.h b/MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.h
index a87ad5fdb8..2b727aba65 100644
--- a/MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.h
+++ b/MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.h
@@ -29,7 +29,9 @@
 #include <Library/UefiDriverEntryPoint.h>
 #include <Library/UefiBootServicesTableLib.h>
 #include <Library/MemoryAllocationLib.h>
+#include <Library/BaseMemoryLib.h>
 #include <Library/UefiRuntimeLib.h>
+#include "Library/UefiLib.h"
 
 #define RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE  SIGNATURE_32 ('r', 'h', 'c', 'e')
 
@@ -37,17 +39,21 @@ typedef struct {
   UINTN                     Signature;
   EFI_RSC_HANDLER_CALLBACK  RscHandlerCallback;
   EFI_TPL                   Tpl;
+  EFI_EVENT                 Event;
+  EFI_PHYSICAL_ADDRESS      StatusCodeDataBuffer;
+  UINTN                     BufferSize;
+  EFI_PHYSICAL_ADDRESS      EndPointer;
   LIST_ENTRY                Node;
 } RSC_HANDLER_CALLBACK_ENTRY;
 
 typedef struct {
-  EFI_RSC_HANDLER_CALLBACK RscHandlerCallback;
-  EFI_STATUS_CODE_TYPE     Type;
-  EFI_STATUS_CODE_VALUE    Value;
-  UINT32                   Instance;
-  EFI_GUID                 *CallerId;
-  EFI_STATUS_CODE_DATA     *Data;
-} RSC_EVENT_CONTEXT;
+  EFI_STATUS_CODE_TYPE      Type;
+  EFI_STATUS_CODE_VALUE     Value;
+  UINT32                    Instance;
+  UINT32                    Reserved;
+  EFI_GUID                  CallerId;
+  EFI_STATUS_CODE_DATA      Data;
+} RSC_DATA_ENTRY;
 
 /**
   Register the callback function for ReportStatusCode() notification.
-- 
cgit v1.2.3