-\r
/** @file\r
Serial I/O status code reporting worker.\r
\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: SerialStatusCodeWorker.c\r
-\r
**/\r
\r
#include "PeiStatusCode.h"\r
-#include "DebugInfo.h"\r
\r
/**\r
Convert status code value and extended data to readable ASCII string, send string to serial I/O device.\r
UINT32 LineNumber;\r
UINTN CharCount;\r
VA_LIST Marker;\r
- EFI_DEBUG_INFO *DebugInfo;\r
\r
Buffer[0] = '\0';\r
\r
Format,\r
Marker\r
);\r
- } else if (Data != NULL &&\r
- CompareGuid (&Data->Type, &gEfiStatusCodeSpecificDataGuid) &&\r
- (CodeType & EFI_STATUS_CODE_TYPE_MASK) == EFI_DEBUG_CODE) {\r
- //\r
- // Print specific data into output buffer.\r
- //\r
- DebugInfo = (EFI_DEBUG_INFO *) (Data + 1);\r
- Marker = (VA_LIST) (DebugInfo + 1);\r
- Format = (CHAR8 *) (((UINT64 *) Marker) + 12);\r
-\r
- CharCount = AsciiVSPrint (Buffer, EFI_STATUS_CODE_DATA_MAX_SIZE, Format, Marker);\r
} else if ((CodeType & EFI_STATUS_CODE_TYPE_MASK) == EFI_ERROR_CODE) {\r
//\r
// Print ERROR information into output buffer.\r
\r
return EFI_SUCCESS;\r
}\r
+\r