]>
Commit | Line | Data |
---|---|---|
aaedfe3c JY |
1 | /** @file\r |
2 | \r | |
9095d37b | 3 | Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>\r |
9344f092 | 4 | SPDX-License-Identifier: BSD-2-Clause-Patent\r |
aaedfe3c JY |
5 | \r |
6 | **/\r | |
7 | \r | |
8 | #ifndef _HSTI_DXE_H_\r | |
9 | #define _HSTI_DXE_H_\r | |
10 | \r | |
11 | #include <PiDxe.h>\r | |
12 | #include <Library/BaseLib.h>\r | |
13 | #include <Library/BaseMemoryLib.h>\r | |
14 | #include <Library/MemoryAllocationLib.h>\r | |
15 | #include <Library/UefiBootServicesTableLib.h>\r | |
16 | #include <Library/DebugLib.h>\r | |
17 | \r | |
18 | #include <IndustryStandard/Hsti.h>\r | |
19 | \r | |
20 | #include <Protocol/AdapterInformation.h>\r | |
21 | \r | |
22 | #define HSTI_AIP_PRIVATE_SIGNATURE SIGNATURE_32('H', 'S', 'T', 'I')\r | |
23 | \r | |
24 | typedef struct {\r | |
2f88bd3a MK |
25 | UINT32 Signature;\r |
26 | LIST_ENTRY Link;\r | |
27 | EFI_ADAPTER_INFORMATION_PROTOCOL Aip;\r | |
28 | VOID *Hsti;\r | |
29 | UINTN HstiSize;\r | |
30 | UINTN HstiMaxSize;\r | |
aaedfe3c JY |
31 | } HSTI_AIP_PRIVATE_DATA;\r |
32 | \r | |
33 | #define HSTI_AIP_PRIVATE_DATA_FROM_THIS(a) \\r | |
34 | CR (a, \\r | |
35 | HSTI_AIP_PRIVATE_DATA, \\r | |
36 | Aip, \\r | |
37 | HSTI_AIP_PRIVATE_SIGNATURE \\r | |
38 | )\r | |
39 | \r | |
40 | #define HSTI_DEFAULT_ERROR_STRING_LEN 255\r | |
41 | \r | |
2f88bd3a | 42 | extern EFI_ADAPTER_INFORMATION_PROTOCOL mAdapterInformationProtocol;\r |
aaedfe3c JY |
43 | \r |
44 | /**\r | |
45 | Return if input HSTI data follows HSTI specification.\r | |
46 | \r | |
47 | @param HstiData HSTI data\r | |
48 | @param HstiSize HSTI size\r | |
49 | \r | |
50 | @retval TRUE HSTI data follows HSTI specification.\r | |
51 | @retval FALSE HSTI data does not follow HSTI specification.\r | |
52 | **/\r | |
53 | BOOLEAN\r | |
54 | InternalHstiIsValidTable (\r | |
2f88bd3a MK |
55 | IN VOID *HstiData,\r |
56 | IN UINTN HstiSize\r | |
aaedfe3c JY |
57 | );\r |
58 | \r | |
9095d37b | 59 | #endif\r |