]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkPkg/Library/FrameworkUefiLib/UefiNotTiano.c
Update FV file path to follow the definition in Framework DxeCis 0.91.
[mirror_edk2.git] / IntelFrameworkPkg / Library / FrameworkUefiLib / UefiNotTiano.c
index cb6d2adfa54c6c70f669e8ed6dd4160037e144dd..de79fd38476d9a2364ef0ede6f7eb9e9e274fdd1 100644 (file)
@@ -294,21 +294,16 @@ EfiGetNameGuidFromFwVolDevicePathNode (
   IN CONST MEDIA_FW_VOL_FILEPATH_DEVICE_PATH  *FvDevicePathNode\r
   )\r
 {\r
-  FRAMEWORK_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH  *FrameworkFvDevicePathNode;\r
-\r
   ASSERT (FvDevicePathNode != NULL);\r
 \r
-  FrameworkFvDevicePathNode = (FRAMEWORK_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH  *) FvDevicePathNode;\r
   //\r
-  // Use the new Device path that does not conflict with the UEFI\r
+  // EFI Specification extension on Media Device Path. MEDIA_FW_VOL_FILEPATH_DEVICE_PATH is adopted by UEFI later and added in UEFI2.10. \r
+  // In EdkCompatibility Package, we only support MEDIA_FW_VOL_FILEPATH_DEVICE_PATH that complies with\r
+  // EFI 1.10 and UEFI 2.10.\r
   //\r
-  if (DevicePathType (&FrameworkFvDevicePathNode->Tiano.Header) == MEDIA_DEVICE_PATH &&\r
-      DevicePathSubType (&FrameworkFvDevicePathNode->Tiano.Header) == MEDIA_VENDOR_DP) {\r
-    if (CompareGuid (&gEfiFrameworkDevicePathGuid, &FrameworkFvDevicePathNode->Tiano.TianoSpecificDevicePath)) {\r
-      if (FrameworkFvDevicePathNode->Tiano.Type == TIANO_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH_TYPE) {\r
-        return (EFI_GUID *) &FrameworkFvDevicePathNode->NameGuid;\r
-      }\r
-    }\r
+  if (DevicePathType (&FvDevicePathNode->Header) == MEDIA_DEVICE_PATH &&\r
+      DevicePathSubType (&FvDevicePathNode->Header) == MEDIA_PIWG_FW_FILE_DP) {\r
+    return (EFI_GUID *) &FvDevicePathNode->FvFileName;\r
   }\r
 \r
   return NULL;\r
@@ -336,30 +331,18 @@ EfiInitializeFwVolDevicepathNode (
   IN CONST EFI_GUID                         *NameGuid\r
   )\r
 {\r
-  FRAMEWORK_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH  *FrameworkFvDevicePathNode;\r
-\r
   ASSERT (FvDevicePathNode  != NULL);\r
   ASSERT (NameGuid          != NULL);\r
 \r
-  FrameworkFvDevicePathNode = (FRAMEWORK_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH  *) FvDevicePathNode;\r
-\r
-  //\r
-  // Use the new Device path that does not conflict with the UEFI\r
-  //\r
-  FrameworkFvDevicePathNode->Tiano.Header.Type     = MEDIA_DEVICE_PATH;\r
-  FrameworkFvDevicePathNode->Tiano.Header.SubType  = MEDIA_VENDOR_DP;\r
-  SetDevicePathNodeLength (&FrameworkFvDevicePathNode->Tiano.Header, sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH));\r
-\r
-  //\r
-  // Add the GUID for generic Tiano device paths\r
   //\r
-  CopyGuid (&FrameworkFvDevicePathNode->Tiano.TianoSpecificDevicePath, &gEfiFrameworkDevicePathGuid);\r
-\r
+  // EFI Specification extension on Media Device Path. MEDIA_FW_VOL_FILEPATH_DEVICE_PATH is adopted by UEFI later and added in UEFI2.10. \r
+  // In EdkCompatibility Package, we only support MEDIA_FW_VOL_FILEPATH_DEVICE_PATH that complies with\r
+  // EFI 1.10 and UEFI 2.10.\r
   //\r
-  // Add in the FW Vol File Path Tiano defined information\r
-  //\r
-  FrameworkFvDevicePathNode->Tiano.Type = TIANO_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH_TYPE;\r
-\r
-  CopyGuid (&FrameworkFvDevicePathNode->NameGuid, NameGuid);\r
+  FvDevicePathNode->Header.Type     = MEDIA_DEVICE_PATH;\r
+  FvDevicePathNode->Header.SubType  = MEDIA_PIWG_FW_FILE_DP;\r
+  SetDevicePathNodeLength (&FvDevicePathNode->Header, sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH));\r
+  \r
+  CopyGuid (&FvDevicePathNode->FvFileName, NameGuid);\r
 }\r
 \r