]> git.proxmox.com Git - mirror_edk2.git/commitdiff
EFI Specification extension on Media Device Path. MEDIA_FW_VOL_FILEPATH_DEVICE_PATH...
authorqwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 11 Nov 2008 22:42:28 +0000 (22:42 +0000)
committerqwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 11 Nov 2008 22:42:28 +0000 (22:42 +0000)
In EdkCompatibility Package, we only support MEDIA_FW_VOL_FILEPATH_DEVICE_PATH that complies with EFI 1.10 and UEFI 2.10.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6462 6f19259b-4bc3-4df7-8a09-765794883524

EdkCompatibilityPkg/Foundation/Framework/Include/TianoSpecDevicePath.h
EdkCompatibilityPkg/Foundation/Library/Dxe/EfiDriverLib/DevicePath.c
EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/UefiLib/UefiNotTiano.c
EdkCompatibilityPkg/Foundation/Library/RuntimeDxe/EfiRuntimeLib/RtDevicePath.c

index a2f45a4a540903f76af6dfd70ea58694d08494fc..413b19bcb580b7f32b77f9a7676a3fe282f59174 100644 (file)
@@ -24,43 +24,17 @@ Abstract:
 \r
 #pragma pack(1)\r
 \r
-#if (EFI_SPECIFICATION_VERSION < 0x00020000)\r
 //\r
-// EFI Specification extension on Media Device Path\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
 #define MEDIA_FV_FILEPATH_DP  0x06\r
 typedef struct {\r
   EFI_DEVICE_PATH_PROTOCOL  Header;\r
   EFI_GUID                  NameGuid;\r
 } MEDIA_FW_VOL_FILEPATH_DEVICE_PATH;\r
-#endif\r
-\r
-\r
-#if (EFI_SPECIFICATION_VERSION == 0x00020000)\r
-//\r
-// For UEFI 2.0, use GUIDed PIWG device path to work-around EFI Specification extension on Media Device Path\r
-//\r
-typedef struct {\r
-  EFI_DEVICE_PATH_PROTOCOL  Header;\r
-  EFI_GUID                  PiwgSpecificDevicePath;\r
-  UINT32                    Type;\r
-} PIWG_DEVICE_PATH;\r
 \r
-#define PIWG_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH_TYPE         0x01\r
-typedef struct {\r
-  PIWG_DEVICE_PATH      Piwg;\r
-  EFI_GUID              NameGuid;\r
-} MEDIA_FW_VOL_FILEPATH_DEVICE_PATH;\r
-\r
-//\r
-// Place holder for a future extension\r
-//\r
-#define PIWG_MEDIA_FW_VOL_DEVICE_PATH_TYPE                  0x02\r
-typedef struct {\r
-  PIWG_DEVICE_PATH      Piwg;\r
-  EFI_GUID              VolumeGuid;\r
-} MEDIA_FW_VOL_DEVICE_PATH;\r
-#endif\r
 \r
 #if (EFI_SPECIFICATION_VERSION > 0x00020000)\r
 //\r
index 1a827c1935f439844fffde96dd41cf9f5bf3e94f..f763f03e6635d2c61d585af881aed7925c5e02d8 100644 (file)
@@ -520,33 +520,16 @@ Returns:
 \r
 --*/\r
 {\r
-#if (EFI_SPECIFICATION_VERSION != 0x00020000)\r
   //\r
-  // Use old Device Path\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
+\r
   FvDevicePathNode->Header.Type     = MEDIA_DEVICE_PATH;\r
   FvDevicePathNode->Header.SubType  = MEDIA_FV_FILEPATH_DP;\r
   SetDevicePathNodeLength (&FvDevicePathNode->Header, sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH));\r
 \r
-#else\r
-  //\r
-  // Use the new Device path that does not conflict with the UEFI 2.0\r
-  //\r
-  FvDevicePathNode->Piwg.Header.Type     = MEDIA_DEVICE_PATH;\r
-  FvDevicePathNode->Piwg.Header.SubType  = MEDIA_VENDOR_DP;\r
-  SetDevicePathNodeLength (&FvDevicePathNode->Piwg.Header, sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH));\r
-\r
-  //\r
-  // Add the GUID for generic PIWG device paths\r
-  //\r
-  EfiCopyMem (&FvDevicePathNode->Piwg.PiwgSpecificDevicePath, &gEfiFrameworkDevicePathGuid, sizeof(EFI_GUID));\r
-\r
-  //\r
-  // Add in the FW Vol File Path PIWG defined inforation\r
-  //\r
-  FvDevicePathNode->Piwg.Type = PIWG_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH_TYPE;\r
-\r
-#endif\r
   EfiCopyMem (&FvDevicePathNode->NameGuid, NameGuid, sizeof(EFI_GUID));\r
 }\r
 \r
@@ -581,27 +564,15 @@ Returns:
 \r
 --*/\r
 {\r
-#if (EFI_SPECIFICATION_VERSION != 0x00020000)\r
   //\r
-  // Use old Device Path\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 (&FvDevicePathNode->Header) == MEDIA_DEVICE_PATH &&\r
       DevicePathSubType (&FvDevicePathNode->Header) == MEDIA_FV_FILEPATH_DP) {\r
     return &FvDevicePathNode->NameGuid;\r
   }\r
 \r
-#else\r
-  //\r
-  // Use the new Device path that does not conflict with the UEFI 2.0\r
-  //\r
-  if (DevicePathType (&FvDevicePathNode->Piwg.Header) == MEDIA_DEVICE_PATH &&\r
-      DevicePathSubType (&FvDevicePathNode->Piwg.Header) == MEDIA_VENDOR_DP) {\r
-    if (EfiCompareGuid (&gEfiFrameworkDevicePathGuid, &FvDevicePathNode->Piwg.PiwgSpecificDevicePath)) {\r
-      if (FvDevicePathNode->Piwg.Type == PIWG_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH_TYPE) {\r
-        return &FvDevicePathNode->NameGuid;\r
-      }\r
-    }\r
-  }\r
-#endif\r
   return NULL;\r
 }\r
index 8fbfaa6a1acf0625f781c742dc0219bc3fad8ae6..a247f198e4ebbb87b434e0cc4698aa7b8343c31e 100644 (file)
@@ -297,29 +297,16 @@ GlueEfiGetNameGuidFromFwVolDevicePathNode (
 {\r
   ASSERT (FvDevicePathNode != NULL);\r
 \r
-#if (EFI_SPECIFICATION_VERSION != 0x00020000) \r
   //\r
-  // Use old Device Path\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 (&FvDevicePathNode->Header) == MEDIA_DEVICE_PATH &&\r
       DevicePathSubType (&FvDevicePathNode->Header) == MEDIA_FV_FILEPATH_DP) {\r
     return (EFI_GUID *) &FvDevicePathNode->NameGuid;\r
   }\r
 \r
-#else\r
-  //\r
-  // Use the new Device path that does not conflict with the UEFI 2.0\r
-  //\r
-  // check here : piwg or tiano\r
-  if (DevicePathType (&FvDevicePathNode->Piwg.Header) == MEDIA_DEVICE_PATH &&\r
-      DevicePathSubType (&FvDevicePathNode->Piwg.Header) == MEDIA_VENDOR_DP) {        \r
-    if (CompareGuid (&gEfiFrameworkDevicePathGuid, &FvDevicePathNode->Piwg.PiwgSpecificDevicePath)) {\r
-      if (FvDevicePathNode->Piwg.Type == PIWG_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH_TYPE) {\r
-        return (EFI_GUID *) &FvDevicePathNode->NameGuid;\r
-      }\r
-    }\r
-  }\r
-#endif  \r
   return NULL;\r
 }\r
 \r
@@ -348,34 +335,15 @@ GlueEfiInitializeFwVolDevicepathNode (
   ASSERT (FvDevicePathNode  != NULL);\r
   ASSERT (NameGuid          != NULL);\r
 \r
-#if (EFI_SPECIFICATION_VERSION != 0x00020000) \r
   //\r
-  // Use old Device Path\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
   FvDevicePathNode->Header.Type     = MEDIA_DEVICE_PATH;\r
   FvDevicePathNode->Header.SubType  = MEDIA_FV_FILEPATH_DP;\r
   SetDevicePathNodeLength (&FvDevicePathNode->Header, sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH));\r
   \r
-#else\r
-  //\r
-  // Use the new Device path that does not conflict with the UEFI 2.0\r
-  //\r
-  FvDevicePathNode->Piwg.Header.Type     = MEDIA_DEVICE_PATH;\r
-  FvDevicePathNode->Piwg.Header.SubType  = MEDIA_VENDOR_DP;\r
-  SetDevicePathNodeLength (&FvDevicePathNode->Piwg.Header, sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH));\r
-\r
-  //\r
-  // Add the GUID for generic PIWG device paths\r
-  //\r
-  CopyGuid (&FvDevicePathNode->Piwg.PiwgSpecificDevicePath, &gEfiFrameworkDevicePathGuid);\r
-\r
-  //\r
-  // Add in the FW Vol File Path PIWG defined inforation\r
-  //\r
-  FvDevicePathNode->Piwg.Type = PIWG_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH_TYPE;\r
-\r
-#endif\r
-\r
   CopyGuid (&FvDevicePathNode->NameGuid, NameGuid);\r
 \r
 }\r
index ac777802d740dfd3bea02d8f6d8686f65ac76aa1..77d232be24c11e71e2ca467b599365e25ba16260 100644 (file)
@@ -617,33 +617,15 @@ Returns:
 \r
 --*/\r
 {\r
-#if (EFI_SPECIFICATION_VERSION != 0x00020000)\r
   //\r
-  // Use old Device Path\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
   FvDevicePathNode->Header.Type     = MEDIA_DEVICE_PATH;\r
   FvDevicePathNode->Header.SubType  = MEDIA_FV_FILEPATH_DP;\r
   SetDevicePathNodeLength (&FvDevicePathNode->Header, sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH));\r
 \r
-#else\r
-  //\r
-  // Use the new Device path that does not conflict with the UEFI 2.0\r
-  //\r
-  FvDevicePathNode->Piwg.Header.Type     = MEDIA_DEVICE_PATH;\r
-  FvDevicePathNode->Piwg.Header.SubType  = MEDIA_VENDOR_DP;\r
-  SetDevicePathNodeLength (&FvDevicePathNode->Piwg.Header, sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH));\r
-\r
-  //\r
-  // Add the GUID for generic PIWG device paths\r
-  //\r
-  EfiCopyMem (&FvDevicePathNode->Piwg.PiwgSpecificDevicePath, &gEfiFrameworkDevicePathGuid, sizeof(EFI_GUID));\r
-\r
-  //\r
-  // Add in the FW Vol File Path PIWG defined inforation\r
-  //\r
-  FvDevicePathNode->Piwg.Type = PIWG_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH_TYPE;\r
-\r
-#endif\r
   EfiCopyMem (&FvDevicePathNode->NameGuid, NameGuid, sizeof(EFI_GUID));\r
 }\r
 \r
@@ -678,28 +660,16 @@ Returns:
 \r
 --*/\r
 {\r
-#if (EFI_SPECIFICATION_VERSION != 0x00020000)\r
   //\r
-  // Use old Device Path\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 (&FvDevicePathNode->Header) == MEDIA_DEVICE_PATH &&\r
       DevicePathSubType (&FvDevicePathNode->Header) == MEDIA_FV_FILEPATH_DP) {\r
     return &FvDevicePathNode->NameGuid;\r
   }\r
 \r
-#else\r
-  //\r
-  // Use the new Device path that does not conflict with the UEFI 2.0\r
-  //\r
-  if (DevicePathType (&FvDevicePathNode->Piwg.Header) == MEDIA_DEVICE_PATH &&\r
-      DevicePathSubType (&FvDevicePathNode->Piwg.Header) == MEDIA_VENDOR_DP) {\r
-    if (EfiCompareGuid (&gEfiFrameworkDevicePathGuid, &FvDevicePathNode->Piwg.PiwgSpecificDevicePath)) {\r
-      if (FvDevicePathNode->Piwg.Type == PIWG_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH_TYPE) {\r
-        return &FvDevicePathNode->NameGuid;\r
-      }\r
-    }\r
-  }\r
-#endif  \r
-  return NULL;\r
+   return NULL;\r
 }\r
 \r