- PeiServices = GetPeiServicesTablePointer ();\r
- Status = (*PeiServices)->ReportStatusCode (\r
- PeiServices,\r
- Type,\r
- Value,\r
- Instance,\r
- (EFI_GUID *)CallerId,\r
- Data\r
- );\r
- if (Status == EFI_NOT_AVAILABLE_YET) {\r
- Status = OemHookStatusCodeInitialize ();\r
- if (!EFI_ERROR (Status)) {\r
- return OemHookStatusCodeReport (Type, Value, Instance, (EFI_GUID *) CallerId, Data);\r
+ if ((ReportProgressCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_PROGRESS_CODE) ||\r
+ (ReportErrorCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_ERROR_CODE) ||\r
+ (ReportDebugCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_DEBUG_CODE)) {\r
+ PeiServices = GetPeiServicesTablePointer ();\r
+ Status = (*PeiServices)->ReportStatusCode (\r
+ PeiServices,\r
+ Type,\r
+ Value,\r
+ Instance,\r
+ (EFI_GUID *)CallerId,\r
+ Data\r
+ );\r
+ if (Status == EFI_NOT_AVAILABLE_YET) {\r
+ Status = OemHookStatusCodeInitialize ();\r
+ if (!EFI_ERROR (Status)) {\r
+ return OemHookStatusCodeReport (Type, Value, Instance, (EFI_GUID *) CallerId, Data);\r
+ }\r