2 Pei Core Status Code Support
4 Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
13 Core version of the Status Code reporter
16 @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.
17 @param CodeType Type of Status Code.
18 @param Value Value to output for Status Code.
19 @param Instance Instance Number of this status code.
20 @param CallerId ID of the caller of this status code.
21 @param Data Optional data associated with this status code.
23 @retval EFI_SUCCESS if status code is successfully reported
24 @retval EFI_NOT_AVAILABLE_YET if StatusCodePpi has not been installed
30 IN CONST EFI_PEI_SERVICES
**PeiServices
,
31 IN EFI_STATUS_CODE_TYPE CodeType
,
32 IN EFI_STATUS_CODE_VALUE Value
,
34 IN CONST EFI_GUID
*CallerId
,
35 IN CONST EFI_STATUS_CODE_DATA
*Data OPTIONAL
39 EFI_PEI_PROGRESS_CODE_PPI
*StatusCodePpi
;
42 // Locate StatusCode Ppi.
44 Status
= PeiServicesLocatePpi (
45 &gEfiPeiStatusCodePpiGuid
,
48 (VOID
**)&StatusCodePpi
51 if (!EFI_ERROR (Status
)) {
52 Status
= StatusCodePpi
->ReportStatusCode (
64 return EFI_NOT_AVAILABLE_YET
;