]> git.proxmox.com Git - mirror_edk2.git/blob - SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.h
c03f0827807ff3ae3dea34838198c1cb6841ddc1
[mirror_edk2.git] / SecurityPkg / Tcg / Opal / OpalPasswordDxe / OpalHii.h
1 /** @file
2 Public Header file of HII library used by Opal UEFI Driver.
3 Defines required callbacks of Opal HII library.
4
5 Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
6 This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
10
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13
14 **/
15
16 #ifndef _OPAL_HII_H_
17 #define _OPAL_HII_H_
18
19 #include <Library/OpalPasswordSupportLib.h>
20 #include <OpalDriverPrivate.h>
21
22 #define DEFAULT_RESPONSE_SIZE 200
23
24 /**
25 Get the driver image handle.
26
27 @retval the driver image handle.
28
29 **/
30 EFI_HANDLE
31 HiiGetDriverImageHandleCB(
32 VOID
33 );
34
35 /**
36 Install the HII form and string packages.
37
38 @retval EFI_SUCCESS Install all the resources success.
39 @retval EFI_OUT_OF_RESOURCES Out of resource error.
40 **/
41 EFI_STATUS
42 OpalHiiAddPackages(
43 VOID
44 );
45
46 /**
47 Check whether enable feature or not.
48
49 @retval Return the disk number.
50
51 **/
52 UINT8
53 HiiGetNumConfigRequiredOpalDisksCB(
54 VOID
55 );
56
57 /**
58 Returns the driver name.
59
60 @retval Returns the driver name.
61
62 **/
63 CHAR16*
64 HiiGetDriverNameCB(
65 VOID
66 );
67
68 /**
69 Returns the opaque pointer to a physical disk context.
70
71 @param DiskIndex Input the disk index.
72
73 @retval The device pointer.
74
75 **/
76 OPAL_DISK*
77 HiiGetOpalDiskCB(
78 UINT8 DiskIndex
79 );
80
81 /**
82 Returns the disk name.
83
84 @param DiskIndex Input the disk index.
85
86 @retval Returns the disk name.
87
88 **/
89 CHAR8*
90 HiiDiskGetNameCB(
91 UINT8 DiskIndex
92 );
93
94 /**
95 Set a string Value in a form.
96
97 @param DestStringId The stringid which need to update.
98 @param SrcAsciiStr The string nned to update.
99
100 @retval EFI_SUCCESS Do the required action success.
101 @retval Others Other error occur.
102
103 **/
104 EFI_STATUS
105 HiiSetFormString(
106 EFI_STRING_ID DestStringId,
107 CHAR8 *SrcAsciiStr
108 );
109
110 /**
111 Install the HII related resources.
112
113 @retval EFI_SUCCESS Install all the resources success.
114 @retval other Error occur when install the resources.
115 **/
116 EFI_STATUS
117 HiiInstall(
118 VOID
119 );
120
121 /**
122 Uninstall the HII capability.
123
124 @retval EFI_SUCCESS Uninstall all the resources success.
125 @retval others Other errors occur when unistall the hii resource.
126 **/
127 EFI_STATUS
128 HiiUninstall(
129 VOID
130 );
131
132 /**
133 Initialize the Opal disk base on the hardware info get from device.
134
135 @param Dev The Opal device.
136
137 @retval EFI_SUCESS Initialize the device success.
138 @retval EFI_DEVICE_ERROR Get info from device failed.
139
140 **/
141 EFI_STATUS
142 OpalDiskInitialize (
143 IN OPAL_DRIVER_DEVICE *Dev
144 );
145
146 #endif // _HII_H_