BDS library definition, include the file and data structure\r
\r
Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>\r
+(C) Copyright 2015 Hewlett Packard Enterprise Development LP<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
#include <Protocol/BootLogo.h>\r
#include <Protocol/DriverHealth.h>\r
#include <Protocol/FormBrowser2.h>\r
+#include <Protocol/VariableLock.h>\r
\r
#include <Guid/ZeroGuid.h>\r
#include <Guid/MemoryTypeInformation.h>\r
IN EFI_HANDLE Handle\r
);\r
\r
-#define BM_OPTION_NAME_LEN sizeof ("SysPrep####")\r
+//\r
+// PlatformRecovery#### is the load option with the longest name\r
+//\r
+#define BM_OPTION_NAME_LEN sizeof ("PlatformRecovery####")\r
extern CHAR16 *mBmLoadOptionName[];\r
\r
+/**\r
+ Visitor function to be called by BmForEachVariable for each variable\r
+ in variable storage.\r
+\r
+ @param Name Variable name.\r
+ @param Guid Variable GUID.\r
+ @param Context The same context passed to BmForEachVariable.\r
+**/\r
typedef\r
VOID\r
-(*VARIABLE_VISITOR) (\r
+(*BM_VARIABLE_VISITOR) (\r
CHAR16 *Name,\r
EFI_GUID *Guid,\r
VOID *Context\r
@param Context The context passed to Visitor function.\r
**/\r
VOID\r
-ForEachVariable (\r
- VARIABLE_VISITOR Visitor,\r
+BmForEachVariable (\r
+ BM_VARIABLE_VISITOR Visitor,\r
VOID *Context\r
);\r
\r
IN EFI_DEVICE_PATH_PROTOCOL *Single\r
);\r
\r
-\r
-/**\r
- Return the index of the load option in the load option array.\r
-\r
- The function consider two load options are equal when the \r
- OptionType, Attributes, Description, FilePath and OptionalData are equal.\r
-\r
- @param Key Pointer to the load option to be found.\r
- @param Array Pointer to the array of load options to be found.\r
- @param Count Number of entries in the Array.\r
-\r
- @retval -1 Key wasn't found in the Array.\r
- @retval 0 ~ Count-1 The index of the Key in the Array.\r
-**/\r
-INTN\r
-BmFindLoadOption (\r
- IN CONST EFI_BOOT_MANAGER_LOAD_OPTION *Key,\r
- IN CONST EFI_BOOT_MANAGER_LOAD_OPTION *Array,\r
- IN UINTN Count\r
- );\r
-\r
/**\r
Repair all the controllers according to the Driver Health status queried.\r
**/\r
EFI_DEVICE_PATH_PROTOCOL *DevicePath\r
);\r
\r
+/**\r
+ Convert a single character to number.\r
+ It assumes the input Char is in the scope of L'0' ~ L'9' and L'A' ~ L'F'\r
+\r
+ @param Char The input char which need to convert to int.\r
+\r
+ @return The converted 8-bit number or (UINTN) -1 if conversion failed.\r
+**/\r
+UINTN\r
+BmCharToUint (\r
+ IN CHAR16 Char\r
+ );\r
+\r
#endif // _INTERNAL_BM_H_\r