]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Include/Library/OemHookStatusCodeLib.h
MdeModulePkg/S3SmmInitDone.h: Fix copyright coding style error.
[mirror_edk2.git] / MdeModulePkg / Include / Library / OemHookStatusCodeLib.h
CommitLineData
75dea6bd 1/** @file\r
d1102dba 2 OEM hook status code library. Platform can implement an instance to\r
75dea6bd 3 initialize the OEM devices to report status code information.\r
4\r
d1102dba
LG
5Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
6This program and the accompanying materials are licensed and made available under\r
7the terms and conditions of the BSD License that accompanies this distribution.\r
64a80549 8The full text of the license may be found at\r
d1102dba 9http://opensource.org/licenses/bsd-license.php.\r
75dea6bd 10\r
d1102dba 11THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
64a80549 12WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
75dea6bd 13\r
14**/\r
15\r
16#ifndef __OEM_HOOK_STATUSCODE_LIB__\r
17#define __OEM_HOOK_STATUSCODE_LIB__\r
18\r
19/**\r
20\r
64a80549 21 Initialize OEM status code device.\r
75dea6bd 22\r
23\r
24 @return Status of initialization of OEM status code device.\r
d1102dba 25\r
75dea6bd 26**/\r
27EFI_STATUS\r
28EFIAPI\r
29OemHookStatusCodeInitialize (\r
30 VOID\r
31 );\r
32\r
33/**\r
34 Report status code to OEM device.\r
d1102dba
LG
35\r
36 @param CodeType Indicates the type of status code being reported.\r
37\r
38 @param Value Describes the current status of a hardware or software entity.\r
39 This includes both an operation and classification information\r
64a80549 40 about the class and subclass.\r
d1102dba
LG
41 For progress codes, the operation is the current activity.\r
42 For error codes, it is the exception. For debug codes,\r
43 it is not defined at this time.\r
44 Specific values are discussed in the Intel Platform Innovation\r
64a80549 45 Framework for EFI Status Code Specification.\r
d1102dba
LG
46\r
47 @param Instance The enumeration of a hardware or software entity within the system.\r
48 A system may contain multiple entities that match a class/subclass\r
49 pairing.\r
50 The instance differentiates between them. An instance of 0\r
51 indicates that instance information is unavailable,\r
52 not meaningful, or not relevant. Valid instance numbers\r
64a80549 53 start with 1.\r
75dea6bd 54\r
55\r
d1102dba
LG
56 @param CallerId This optional parameter may be used to identify the caller.\r
57 This parameter allows the status code driver to apply\r
58 different rules to different callers.\r
59 Type EFI_GUID is defined in InstallProtocolInterface()\r
64a80549 60 in the UEFI 2.0 Specification.\r
75dea6bd 61\r
62\r
64a80549 63 @param Data This optional parameter may be used to pass additional data.\r
d1102dba 64\r
64a80549 65 @return The function always returns EFI_SUCCESS.\r
75dea6bd 66\r
67**/\r
68EFI_STATUS\r
69EFIAPI\r
70OemHookStatusCodeReport (\r
71 IN EFI_STATUS_CODE_TYPE CodeType,\r
72 IN EFI_STATUS_CODE_VALUE Value,\r
73 IN UINT32 Instance,\r
74 IN EFI_GUID *CallerId, OPTIONAL\r
75 IN EFI_STATUS_CODE_DATA *Data OPTIONAL\r
76 );\r
77\r
78#endif // __OEM_HOOK_STATUSCODE_LIB__\r
79\r