Hi Ruiyu, Thanks for the quick response. It is because of that we need to do same thing as what BmFindLoadOption function did in our PlatformBootManagerLib to check/find specific boot option from the boot options array which is got from EfiBootManagerGetLoadOptions function. I also think other developers may have the same need. Therefore, it would be better to make BmFindLoadOption public to reduce the maintenance effort caused by duplicating the function into other BDS libraries like PlatformBootManagerLib. Is it reasonable and acceptable? If so, I will rename the BmFindLoadOption function to EfiBootManagerFindLoadOption and resend the patch.
Regards, Sunny Wang -----Original Message----- From: Ni, Ruiyu [mailto:ruiyu...@intel.com] Sent: Monday, October 12, 2015 3:29 PM To: Wang, Sunny (HPS SW); edk2-devel@lists.01.org Subject: RE: [edk2] [PATCH] MdeModulePkg: Make the BmFindLoadOption function public Importance: High Sunny, Why do you want to expose this function? Bm* needs to change to EfiBootManager* if it's public. Thanks, Ray -----Original Message----- From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of Sunny Wang Sent: Monday, October 12, 2015 3:15 PM To: edk2-devel@lists.01.org Subject: [edk2] [PATCH] MdeModulePkg: Make the BmFindLoadOption function public Make the BmFindLoadOption function public Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Sunny Wang <sunnyw...@hpe.com> --- MdeModulePkg/Include/Library/UefiBootManagerLib.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/MdeModulePkg/Include/Library/UefiBootManagerLib.h b/MdeModulePkg/Include/Library/UefiBootManagerLib.h index 5538d90..e86b589 100644 --- a/MdeModulePkg/Include/Library/UefiBootManagerLib.h +++ b/MdeModulePkg/Include/Library/UefiBootManagerLib.h @@ -2,6 +2,7 @@ Provide Boot Manager related library APIs. Copyright (c) 2011 - 2015, Intel Corporation. All rights reserved.<BR> +(C) Copyright 2015 Hewlett Packard Enterprise Development LP<BR> This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at @@ -222,6 +223,26 @@ EfiBootManagerSortLoadOptionVariable ( IN SORT_COMPARE CompareFunction ); +/** + Return the index of the load option in the load option array. + + The function consider two load options are equal when the + OptionType, Attributes, Description, FilePath and OptionalData are equal. + + @param Key Pointer to the load option to be found. + @param Array Pointer to the array of load options to be found. + @param Count Number of entries in the Array. + + @retval -1 Key wasn't found in the Array. + @retval 0 ~ Count-1 The index of the Key in the Array. +**/ +INTN +BmFindLoadOption ( + IN CONST EFI_BOOT_MANAGER_LOAD_OPTION *Key, + IN CONST EFI_BOOT_MANAGER_LOAD_OPTION *Array, + IN UINTN Count + ); + // // Boot Manager hot key library functions. // -- 2.5.0.windows.1 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel