summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorxli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524>2010-07-30 05:38:39 +0000
committerxli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524>2010-07-30 05:38:39 +0000
commit5d4a0dbc91d4e25002a2c35a3b9b5c3edfb284c2 (patch)
treeaf189068296d5839bf7ca5323dc01602b93c401c
parent96a2516355feae4bf10009fe28722c689af7a3e6 (diff)
downloadedk2-5d4a0dbc91d4e25002a2c35a3b9b5c3edfb284c2.tar.gz
edk2-5d4a0dbc91d4e25002a2c35a3b9b5c3edfb284c2.tar.bz2
edk2-5d4a0dbc91d4e25002a2c35a3b9b5c3edfb284c2.zip
Handle gEfiStatusCodeDataTypeStringGuid in status code drivers.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10717 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r--IntelFrameworkModulePkg/Universal/StatusCode/Pei/SerialStatusCodeWorker.c13
-rw-r--r--IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf2
-rw-r--r--IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/SerialStatusCodeWorker.c13
-rw-r--r--IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf2
4 files changed, 26 insertions, 4 deletions
diff --git a/IntelFrameworkModulePkg/Universal/StatusCode/Pei/SerialStatusCodeWorker.c b/IntelFrameworkModulePkg/Universal/StatusCode/Pei/SerialStatusCodeWorker.c
index 59ad7a01d9..24afa1f2d2 100644
--- a/IntelFrameworkModulePkg/Universal/StatusCode/Pei/SerialStatusCodeWorker.c
+++ b/IntelFrameworkModulePkg/Universal/StatusCode/Pei/SerialStatusCodeWorker.c
@@ -1,7 +1,7 @@
/** @file
Serial I/O status code reporting worker.
- Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
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
@@ -126,6 +126,17 @@ SerialStatusCodeReportWorker (
Value,
Instance
);
+ } else if (CompareGuid (&Data->Type, &gEfiStatusCodeDataTypeStringGuid) &&
+ ((EFI_STATUS_CODE_STRING_DATA *) Data)->StringType == EfiStringAscii) {
+ //
+ // EFI_STATUS_CODE_STRING_DATA
+ //
+ CharCount = AsciiSPrint (
+ Buffer,
+ sizeof (Buffer),
+ "%a\n\r",
+ ((EFI_STATUS_CODE_STRING_DATA *) Data)->String.Ascii
+ );
} else {
//
// Code type is not defined.
diff --git a/IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf b/IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
index b29067d612..55163fae16 100644
--- a/IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
+++ b/IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
@@ -55,7 +55,7 @@
[Guids]
gMemoryStatusCodeRecordGuid ## SOMETIMES_CONSUMES ## HOB
-
+ gEfiStatusCodeDataTypeStringGuid ## CONSUMES
[Ppis]
gEfiPeiStatusCodePpiGuid ## PRODUCES
diff --git a/IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/SerialStatusCodeWorker.c b/IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/SerialStatusCodeWorker.c
index 3f50368755..2bba8b64f5 100644
--- a/IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/SerialStatusCodeWorker.c
+++ b/IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/SerialStatusCodeWorker.c
@@ -1,7 +1,7 @@
/** @file
Serial I/O status code reporting worker.
- Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
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
@@ -124,6 +124,17 @@ SerialStatusCodeReportWorker (
Value,
Instance
);
+ } else if (CompareGuid (&Data->Type, &gEfiStatusCodeDataTypeStringGuid) &&
+ ((EFI_STATUS_CODE_STRING_DATA *) Data)->StringType == EfiStringAscii) {
+ //
+ // EFI_STATUS_CODE_STRING_DATA
+ //
+ CharCount = AsciiSPrint (
+ Buffer,
+ sizeof (Buffer),
+ "%a\n\r",
+ ((EFI_STATUS_CODE_STRING_DATA *) Data)->String.Ascii
+ );
} else {
//
// Code type is not defined.
diff --git a/IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf b/IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
index e1f42f4d34..2ea015f8d9 100644
--- a/IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
+++ b/IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
@@ -66,7 +66,7 @@
gEfiStatusCodeDataTypeDebugGuid ## SOMETIMES_CONSUMES (Needed if Data Hub is supported for status code.)
gMemoryStatusCodeRecordGuid ## CONSUMES ## HOB
gEfiEventVirtualAddressChangeGuid ## CONSUMES ## Event
-
+ gEfiStatusCodeDataTypeStringGuid ## CONSUMES
[Protocols]
gEfiStatusCodeRuntimeProtocolGuid ## PRODUCES