]> git.proxmox.com Git - mirror_edk2.git/blame - EdkModulePkg/Library/EdkRuntimeStatusCodeLib/BsDataHubStatusCode/BsDataHubStatusCode.h
1. Updated function headers in all assembly files.
[mirror_edk2.git] / EdkModulePkg / Library / EdkRuntimeStatusCodeLib / BsDataHubStatusCode / BsDataHubStatusCode.h
CommitLineData
878ddf1f 1/*++\r
2\r
3Copyright (c) 2006, Intel Corporation \r
4All rights reserved. This program and the accompanying materials \r
5are licensed and made available under the terms and conditions of the BSD License \r
6which accompanies this distribution. The full text of the license may be found at \r
7http://opensource.org/licenses/bsd-license.php \r
8 \r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
11\r
12Module Name:\r
13\r
14 BsDataHubStatusCode.h\r
15\r
16Abstract:\r
17\r
18 Header for the status code data hub logging component\r
19\r
20--*/\r
21\r
22#ifndef _EFI_BS_DATA_HUB_STATUS_CODE_H_\r
23#define _EFI_BS_DATA_HUB_STATUS_CODE_H_\r
24\r
25//\r
26// Private data declarations\r
27//\r
28#define MAX_RECORD_NUM 1000\r
29#define BYTES_PER_RECORD EFI_STATUS_CODE_DATA_MAX_SIZE\r
30#define EMPTY_RECORD_TAG 0xFF\r
31\r
32#define BS_DATA_HUB_STATUS_CODE_SIGNATURE EFI_SIGNATURE_32 ('B', 'D', 'H', 'S')\r
33\r
34typedef struct {\r
35 UINTN Signature;\r
36 LIST_ENTRY Link;\r
37 UINT8 RecordBuffer[BYTES_PER_RECORD];\r
38} STATUS_CODE_RECORD_LIST;\r
39\r
40//\r
41// Function prototypes\r
42//\r
43STATUS_CODE_RECORD_LIST *\r
44GetRecordBuffer (\r
45 VOID\r
46 )\r
47;\r
48\r
49/*++\r
50\r
51Routine Description:\r
52\r
53 Returned buffer of length BYTES_PER_RECORD\r
54\r
55Arguments:\r
56\r
57 None\r
58\r
59Returns:\r
60\r
61 Entry in mRecordBuffer or NULL if non available\r
62\r
63--*/\r
64DATA_HUB_STATUS_CODE_DATA_RECORD *\r
65AquireEmptyRecordBuffer (\r
66 VOID\r
67 )\r
68;\r
69\r
70/*++\r
71\r
72Routine Description:\r
73\r
74 Allocate a mRecordBuffer entry in the form of a pointer.\r
75\r
76Arguments:\r
77\r
78 None\r
79\r
80Returns:\r
81\r
82 Pointer to new buffer. NULL if none exist.\r
83\r
84--*/\r
85EFI_STATUS\r
86ReleaseRecordBuffer (\r
87 IN STATUS_CODE_RECORD_LIST *RecordBuffer\r
88 )\r
89;\r
90\r
91/*++\r
92\r
93Routine Description:\r
94\r
95 Release a mRecordBuffer entry allocated by AquireEmptyRecordBuffer ().\r
96\r
97Arguments:\r
98\r
99 RecordBuffer - Data to free\r
100\r
101Returns:\r
102\r
103 EFI_SUCCESS - If RecordBuffer is valid\r
104 EFI_UNSUPPORTED - The record list has empty\r
105\r
106--*/\r
107VOID\r
108EFIAPI\r
109LogDataHubEventHandler (\r
110 IN EFI_EVENT Event,\r
111 IN VOID *Context\r
112 )\r
113;\r
114\r
115/*++\r
116\r
117Routine Description:\r
118\r
119 Event Handler that log in Status code in Data Hub.\r
120\r
121Arguments:\r
122\r
123 (Standard EFI Event Handler - EFI_EVENT_NOTIFY)\r
124\r
125Returns:\r
126\r
127 NONE\r
128\r
129--*/\r
130#endif\r