/** @file\r
Report Status Code Library for DXE Phase.\r
\r
- Copyright (c) 2006, Intel Corporation<BR>\r
+ Copyright (c) 2006 - 2007, Intel Corporation<BR>\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
@retval EFI_UNSUPPORTED Status Code Protocol is not available.\r
\r
**/\r
+STATIC\r
EFI_STATUS\r
InternalReportStatusCode (\r
IN EFI_STATUS_CODE_TYPE Type,\r
// in the handle database.\r
//\r
if (gStatusCode == NULL) {\r
+ if (gBS == NULL) {\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
@return The size, in bytes, of DevicePath.\r
\r
**/\r
+STATIC\r
UINTN\r
InternalReportStatusCodeDevicePathSize (\r
IN CONST EFI_DEVICE_PATH_PROTOCOL *DevicePath\r
//\r
if (((CodeType & EFI_STATUS_CODE_TYPE_MASK) == EFI_PROGRESS_CODE) ||\r
((CodeType & EFI_STATUS_CODE_TYPE_MASK) == EFI_ERROR_CODE) ) {\r
- *PostCode = (UINT8) (((Value & EFI_STATUS_CODE_CLASS_MASK) >> 24) << 5);\r
- *PostCode |= (UINT8) (((Value & EFI_STATUS_CODE_SUBCLASS_MASK) >> 16) & 0x1f);\r
+ *PostCode = (UINT8) ((((Value & EFI_STATUS_CODE_CLASS_MASK) >> 24) << 5) |\r
+ (((Value & EFI_STATUS_CODE_SUBCLASS_MASK) >> 16) & 0x1f));\r
return TRUE;\r
}\r
return FALSE;\r
ASSERT (!((ExtendedData == NULL) && (ExtendedDataSize != 0)));\r
ASSERT (!((ExtendedData != NULL) && (ExtendedDataSize == 0)));\r
\r
+ if (gBS == NULL) {\r
+ return EFI_UNSUPPORTED;\r
+ }\r
+\r
//\r
// Allocate space for the Status Code Header and its buffer\r
//\r
VOID\r
)\r
{\r
- return ((PcdGet8(PcdReportStatusCodePropertyMask) & REPORT_STATUS_CODE_PROPERTY_PROGRESS_CODE_ENABLED) != 0);\r
+ return (BOOLEAN) ((PcdGet8(PcdReportStatusCodePropertyMask) & REPORT_STATUS_CODE_PROPERTY_PROGRESS_CODE_ENABLED) != 0);\r
}\r
\r
\r
VOID\r
)\r
{\r
- return ((PcdGet8(PcdReportStatusCodePropertyMask) & REPORT_STATUS_CODE_PROPERTY_ERROR_CODE_ENABLED) != 0);\r
+ return (BOOLEAN) ((PcdGet8(PcdReportStatusCodePropertyMask) & REPORT_STATUS_CODE_PROPERTY_ERROR_CODE_ENABLED) != 0);\r
}\r
\r
\r
VOID\r
)\r
{\r
- return ((PcdGet8(PcdReportStatusCodePropertyMask) & REPORT_STATUS_CODE_PROPERTY_DEBUG_CODE_ENABLED) != 0);\r
+ return (BOOLEAN) ((PcdGet8(PcdReportStatusCodePropertyMask) & REPORT_STATUS_CODE_PROPERTY_DEBUG_CODE_ENABLED) != 0);\r
}\r