]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.h
SecurityPkg: OpalPasswordDxe: Add Opal password dxe driver.
[mirror_edk2.git] / SecurityPkg / Tcg / Opal / OpalPasswordDxe / OpalHii.h
diff --git a/SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.h b/SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.h
new file mode 100644 (file)
index 0000000..c03f082
--- /dev/null
@@ -0,0 +1,146 @@
+/** @file\r
+  Public Header file of HII library used by Opal UEFI Driver.\r
+  Defines required callbacks of Opal HII library.\r
+\r
+Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials\r
+are licensed and made available under the terms and conditions of the BSD License\r
+which accompanies this distribution.  The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php\r
+\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+**/\r
+\r
+#ifndef _OPAL_HII_H_\r
+#define _OPAL_HII_H_\r
+\r
+#include <Library/OpalPasswordSupportLib.h>\r
+#include <OpalDriverPrivate.h>\r
+\r
+#define DEFAULT_RESPONSE_SIZE 200\r
+\r
+/**\r
+  Get the driver image handle.\r
+\r
+  @retval  the driver image handle.\r
+\r
+**/\r
+EFI_HANDLE\r
+HiiGetDriverImageHandleCB(\r
+  VOID\r
+  );\r
+\r
+/**\r
+  Install the HII form and string packages.\r
+\r
+  @retval  EFI_SUCCESS           Install all the resources success.\r
+  @retval  EFI_OUT_OF_RESOURCES  Out of resource error.\r
+**/\r
+EFI_STATUS\r
+OpalHiiAddPackages(\r
+  VOID\r
+  );\r
+\r
+/**\r
+  Check whether enable feature or not.\r
+\r
+  @retval  Return the disk number.\r
+\r
+**/\r
+UINT8\r
+HiiGetNumConfigRequiredOpalDisksCB(\r
+  VOID\r
+  );\r
+\r
+/**\r
+  Returns the driver name.\r
+\r
+  @retval Returns the driver name.\r
+\r
+**/\r
+CHAR16*\r
+HiiGetDriverNameCB(\r
+  VOID\r
+  );\r
+\r
+/**\r
+  Returns the opaque pointer to a physical disk context.\r
+\r
+  @param  DiskIndex       Input the disk index.\r
+\r
+  @retval The device pointer.\r
+\r
+**/\r
+OPAL_DISK*\r
+HiiGetOpalDiskCB(\r
+  UINT8 DiskIndex\r
+  );\r
+\r
+/**\r
+  Returns the disk name.\r
+\r
+  @param  DiskIndex       Input the disk index.\r
+\r
+  @retval Returns the disk name.\r
+\r
+**/\r
+CHAR8*\r
+HiiDiskGetNameCB(\r
+  UINT8 DiskIndex\r
+  );\r
+\r
+/**\r
+  Set a string Value in a form.\r
+\r
+  @param      DestStringId   The stringid which need to update.\r
+  @param      SrcAsciiStr    The string nned to update.\r
+\r
+  @retval  EFI_SUCCESS       Do the required action success.\r
+  @retval  Others            Other error occur.\r
+\r
+**/\r
+EFI_STATUS\r
+HiiSetFormString(\r
+  EFI_STRING_ID       DestStringId,\r
+  CHAR8               *SrcAsciiStr\r
+  );\r
+\r
+/**\r
+  Install the HII related resources.\r
+\r
+  @retval  EFI_SUCCESS        Install all the resources success.\r
+  @retval  other              Error occur when install the resources.\r
+**/\r
+EFI_STATUS\r
+HiiInstall(\r
+  VOID\r
+  );\r
+\r
+/**\r
+  Uninstall the HII capability.\r
+\r
+  @retval  EFI_SUCCESS           Uninstall all the resources success.\r
+  @retval  others                Other errors occur when unistall the hii resource.\r
+**/\r
+EFI_STATUS\r
+HiiUninstall(\r
+  VOID\r
+  );\r
+\r
+/**\r
+  Initialize the Opal disk base on the hardware info get from device.\r
+\r
+  @param Dev                  The Opal device.\r
+\r
+  @retval EFI_SUCESS          Initialize the device success.\r
+  @retval EFI_DEVICE_ERROR    Get info from device failed.\r
+\r
+**/\r
+EFI_STATUS\r
+OpalDiskInitialize (\r
+  IN OPAL_DRIVER_DEVICE          *Dev\r
+  );\r
+\r
+#endif // _HII_H_\r