//\r
// Include common header file for this module.\r
//\r
-#include "CommonHeader.h"\r
+#include "UefiLibInternal.h"\r
\r
/**\r
An empty function to pass error checking of CreateEventEx ().\r
\r
ASSERT (LegacyBootEvent != NULL);\r
\r
- if (gST->Hdr.Revision < 0x00020000) {\r
+ if (gST->Hdr.Revision < EFI_2_00_SYSTEM_TABLE_REVISION) {\r
+ DEBUG ((EFI_D_ERROR, "EFI1.1 can't support LegacyBootEvent!"));\r
+ ASSERT (FALSE);\r
+\r
return EFI_UNSUPPORTED;\r
} else {\r
//\r
)\r
{\r
return EfiCreateEventReadyToBootEx (\r
- TPL_CALLBACK ,\r
+ TPL_CALLBACK,\r
InternalEmptyFuntion,\r
NULL,\r
ReadyToBootEvent\r
\r
ASSERT (ReadyToBootEvent != NULL);\r
\r
- if (gST->Hdr.Revision < 0x00020000) {\r
+ if (gST->Hdr.Revision < EFI_2_00_SYSTEM_TABLE_REVISION) {\r
+ DEBUG ((EFI_D_ERROR, "EFI1.1 can't support ReadyToBootEvent!"));\r
+ ASSERT (FALSE);\r
+\r
return EFI_UNSUPPORTED;\r
} else {\r
//\r
@retval Other FvDevicePathNode is valid and pointer to NameGuid was returned.\r
\r
**/\r
-EFI_GUID *\r
+EFI_GUID*\r
EFIAPI\r
EfiGetNameGuidFromFwVolDevicePathNode (\r
- IN CONST MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *FvDevicePathNode\r
+ IN CONST MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *FvFileDevicePathNode\r
)\r
{\r
- ASSERT (FvDevicePathNode != NULL);\r
- //\r
- // bugbug:Need to implement ...\r
- //\r
+ ASSERT (FvFileDevicePathNode != NULL);\r
+\r
+ if (FvFileDevicePathNode->Header.Type == MEDIA_DEVICE_PATH &&\r
+ FvFileDevicePathNode->Header.SubType == MEDIA_PIWG_FW_FILE_DP\r
+ ) {\r
+ return (EFI_GUID *) &FvFileDevicePathNode->FvFileName;\r
+ }\r
+\r
return NULL;\r
}\r
\r
VOID\r
EFIAPI\r
EfiInitializeFwVolDevicepathNode (\r
- IN OUT MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *FvDevicePathNode,\r
- IN CONST EFI_GUID *NameGuid\r
+ IN OUT MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *FvFileDevicePathNode,\r
+ IN CONST EFI_GUID *NameGuid\r
)\r
{\r
- ASSERT (FvDevicePathNode != NULL);\r
+ ASSERT (FvFileDevicePathNode != NULL);\r
ASSERT (NameGuid != NULL);\r
+\r
//\r
- // bugbug:Need to implement ...\r
+ // Use the new Device path that does not conflict with the UEFI\r
//\r
+ FvFileDevicePathNode->Header.Type = MEDIA_DEVICE_PATH;\r
+ FvFileDevicePathNode->Header.SubType = MEDIA_PIWG_FW_FILE_DP;\r
+ SetDevicePathNodeLength (&FvFileDevicePathNode->Header, sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH));\r
+\r
+ CopyGuid (&FvFileDevicePathNode->FvFileName, NameGuid);\r
}\r
\r