\r
BOOLEAN mHiiPackageListUpdated = FALSE;\r
\r
+HII_VENDOR_DEVICE_PATH mUefiHiiVendorDevicePath = {\r
+ {\r
+ {\r
+ HARDWARE_DEVICE_PATH,\r
+ HW_VENDOR_DP,\r
+ {\r
+ (UINT8) (sizeof (VENDOR_DEVICE_PATH)),\r
+ (UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8)\r
+ }\r
+ },\r
+ //\r
+ // {2A1F1827-03E2-4b2f-83DE-89B6073A0182}\r
+ //\r
+ { 0x2a1f1827, 0x3e2, 0x4b2f, { 0x83, 0xde, 0x89, 0xb6, 0x7, 0x3a, 0x1, 0x82 } }\r
+ },\r
+ {\r
+ END_DEVICE_PATH_TYPE,\r
+ END_ENTIRE_DEVICE_PATH_SUBTYPE,\r
+ { \r
+ (UINT8) (END_DEVICE_PATH_LENGTH),\r
+ (UINT8) ((END_DEVICE_PATH_LENGTH) >> 8)\r
+ }\r
+ }\r
+};\r
+\r
CONFIG_ACCESS_PRIVATE gConfigAccessPrivateTempate = {\r
CONFIG_ACCESS_PRIVATE_SIGNATURE,\r
{\r
\r
ASSERT (ThunkContext->IfrPackageCount != 0);\r
\r
- Status = HiiLibCreateHiiDriverHandle (&ThunkContext->UefiHiiDriverHandle);\r
- ASSERT_EFI_ERROR (Status);\r
- \r
ConfigAccessInstance = AllocateCopyPool (\r
sizeof (CONFIG_ACCESS_PRIVATE), \r
&gConfigAccessPrivateTempate\r
\r
Status = gBS->InstallMultipleProtocolInterfaces (\r
&ThunkContext->UefiHiiDriverHandle,\r
+ &gEfiDevicePathProtocolGuid, \r
+ &mUefiHiiVendorDevicePath,\r
&gEfiHiiConfigAccessProtocolGuid,\r
&ConfigAccessInstance->ConfigAccessProtocol,\r
NULL\r
EFI_STATUS Status;\r
EFI_HII_CONFIG_ACCESS_PROTOCOL *ConfigAccess;\r
\r
- HiiLibDestroyHiiDriverHandle (ThunkContext->UefiHiiDriverHandle);\r
-\r
Status = gBS->HandleProtocol (\r
ThunkContext->UefiHiiDriverHandle,\r
&gEfiHiiConfigAccessProtocolGuid,\r
);\r
ASSERT_EFI_ERROR (Status);\r
\r
- Status = gBS->UninstallProtocolInterface (\r
+ Status = gBS->UninstallMultipleProtocolInterfaces (\r
ThunkContext->UefiHiiDriverHandle,\r
+ &gEfiDevicePathProtocolGuid,\r
+ &mUefiHiiVendorDevicePath,\r
&gEfiHiiConfigAccessProtocolGuid,\r
- ConfigAccess\r
+ ConfigAccess,\r
+ NULL\r
);\r
ASSERT_EFI_ERROR (Status);\r
\r