]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Core/Pei/StatusCode/StatusCode.c
MdeModulePkg: Clean up source files
[mirror_edk2.git] / MdeModulePkg / Core / Pei / StatusCode / StatusCode.c
CommitLineData
615c6dd0 1/** @file\r
b1f6a7c6 2 Pei Core Status Code Support\r
d1102dba
LG
3\r
4Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
5This program and the accompanying materials\r
6are licensed and made available under the terms and conditions of the BSD License\r
7which accompanies this distribution. The full text of the license may be found at\r
8http://opensource.org/licenses/bsd-license.php\r
9\r
10THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
192f6d4c 12\r
b1f6a7c6 13**/\r
192f6d4c 14\r
0d516397 15#include "PeiMain.h"\r
192f6d4c 16\r
b1f6a7c6 17/**\r
192f6d4c 18\r
b1f6a7c6 19 Core version of the Status Code reporter\r
192f6d4c 20\r
192f6d4c 21\r
d73d93c3 22 @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.\r
b1f6a7c6 23 @param CodeType Type of Status Code.\r
24 @param Value Value to output for Status Code.\r
25 @param Instance Instance Number of this status code.\r
26 @param CallerId ID of the caller of this status code.\r
27 @param Data Optional data associated with this status code.\r
192f6d4c 28\r
b1f6a7c6 29 @retval EFI_SUCCESS if status code is successfully reported\r
30 @retval EFI_NOT_AVAILABLE_YET if StatusCodePpi has not been installed\r
192f6d4c 31\r
b1f6a7c6 32**/\r
192f6d4c 33EFI_STATUS\r
34EFIAPI\r
35PeiReportStatusCode (\r
0c2b5da8 36 IN CONST EFI_PEI_SERVICES **PeiServices,\r
37 IN EFI_STATUS_CODE_TYPE CodeType,\r
d1102dba 38 IN EFI_STATUS_CODE_VALUE Value,\r
0c2b5da8 39 IN UINT32 Instance,\r
40 IN CONST EFI_GUID *CallerId,\r
41 IN CONST EFI_STATUS_CODE_DATA *Data OPTIONAL\r
192f6d4c 42 )\r
192f6d4c 43{\r
44 EFI_STATUS Status;\r
45 EFI_PEI_PROGRESS_CODE_PPI *StatusCodePpi;\r
192f6d4c 46\r
47 //\r
40f26b8f 48 // Locate StatusCode Ppi.\r
192f6d4c 49 //\r
50 Status = PeiServicesLocatePpi (\r
d1102dba
LG
51 &gEfiPeiStatusCodePpiGuid,\r
52 0,\r
53 NULL,\r
54 (VOID **)&StatusCodePpi\r
192f6d4c 55 );\r
56\r
57 if (!EFI_ERROR (Status)) {\r
58 Status = StatusCodePpi->ReportStatusCode (\r
59 PeiServices,\r
60 CodeType,\r
61 Value,\r
62 Instance,\r
63 CallerId,\r
64 Data\r
65 );\r
d1102dba
LG
66\r
67 return Status;\r
68 }\r
69\r
70 return EFI_NOT_AVAILABLE_YET;\r
192f6d4c 71}\r
72\r
73\r
74\r