]> git.proxmox.com Git - mirror_edk2.git/commitdiff
SATA Device path updated.
authorgikidy <gikidy@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 2 Apr 2009 08:32:41 +0000 (08:32 +0000)
committergikidy <gikidy@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 2 Apr 2009 08:32:41 +0000 (08:32 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8009 6f19259b-4bc3-4df7-8a09-765794883524

IntelFrameworkModulePkg/Library/GenericBdsLib/DevicePath.c

index 135fa63d1a018995d57a80f652243aad6115ded7..1ec682262ced708449432f5659ffbcd804848845 100644 (file)
@@ -140,7 +140,7 @@ DevPathMemMap (
   CatPrint (\r
     Str,\r
     L"MemMap(%d:%lx-%lx)",\r
-    MemMap->MemoryType,\r
+    (UINTN) MemMap->MemoryType,\r
     MemMap->StartingAddress,\r
     MemMap->EndingAddress\r
     );\r
@@ -239,7 +239,7 @@ DevPathVendor (
         L"SAS(%lx,%lx,%x,",\r
         ((SAS_DEVICE_PATH *) Vendor)->SasAddress,\r
         ((SAS_DEVICE_PATH *) Vendor)->Lun,\r
-        ((SAS_DEVICE_PATH *) Vendor)->RelativeTargetPort\r
+        (UINTN) ((SAS_DEVICE_PATH *) Vendor)->RelativeTargetPort\r
         );\r
       Info = (((SAS_DEVICE_PATH *) Vendor)->DeviceTopology);\r
       if ((Info & 0x0f) == 0) {\r
@@ -345,16 +345,12 @@ DevPathExtendedAcpi (
   UINT16                          Anchor;\r
   CHAR8                           *AsChar8Array;\r
 \r
-  ASSERT (Str != NULL);\r
-  ASSERT (DevPath != NULL);\r
-\r
   HIDSTRIdx    = 0;\r
   UIDSTRIdx    = 0;\r
   CIDSTRIdx    = 0;\r
   ExtendedAcpi = DevPath;\r
   Length       = (UINT16) DevicePathNodeLength ((EFI_DEVICE_PATH_PROTOCOL *) ExtendedAcpi);\r
 \r
-  ASSERT (Length >= 19);\r
   AsChar8Array = (CHAR8 *) ExtendedAcpi;\r
 \r
   //\r
@@ -560,7 +556,7 @@ DevPath1394 (
   F1394_DEVICE_PATH *F1394Path;\r
 \r
   F1394Path = DevPath;\r
-  CatPrint (Str, L"1394(%g)", &F1394Path->Guid);\r
+  CatPrint (Str, L"1394(%lx)", &F1394Path->Guid);\r
 }\r
 \r
 /**\r
@@ -684,13 +680,22 @@ DevPathSata (
   SATA_DEVICE_PATH *Sata;\r
 \r
   Sata = DevPath;\r
-  CatPrint (\r
-    Str,\r
-    L"Sata(%x,%x,%x)",\r
-    (UINTN) Sata->HBAPortNumber,\r
-    (UINTN) Sata->PortMultiplierPortNumber,\r
-    (UINTN) Sata->Lun\r
-    );\r
+  if (Sata->PortMultiplierPortNumber & SATA_HBA_DIRECT_CONNECT_FLAG) {\r
+    CatPrint (\r
+      Str,\r
+      L"Sata(%x,%x)",\r
+      (UINTN) Sata->HBAPortNumber,\r
+      (UINTN) Sata->Lun\r
+      );\r
+  } else {\r
+    CatPrint (\r
+      Str,\r
+      L"Sata(%x,%x,%x)",\r
+      (UINTN) Sata->HBAPortNumber,\r
+      (UINTN) Sata->PortMultiplierPortNumber,\r
+      (UINTN) Sata->Lun\r
+      );\r
+  }\r
 }\r
 \r
 /**\r
@@ -905,7 +910,7 @@ DevPathUart (
   if (Uart->BaudRate == 0) {\r
     CatPrint (Str, L"Uart(DEFAULT,%c,", Parity);\r
   } else {\r
-    CatPrint (Str, L"Uart(%d,%c,", Uart->BaudRate, Parity);\r
+    CatPrint (Str, L"Uart(%ld,%c,", Uart->BaudRate, Parity);\r
   }\r
 \r
   if (Uart->DataBits == 0) {\r
@@ -956,15 +961,12 @@ DevPathiSCSI (
   ISCSI_DEVICE_PATH_WITH_NAME *IScsi;\r
   UINT16                      Options;\r
 \r
-  ASSERT (Str != NULL);\r
-  ASSERT (DevPath != NULL);\r
-\r
   IScsi = DevPath;\r
   CatPrint (\r
     Str,\r
-    L"iSCSI(%s,%x,%lx,",\r
+    L"iSCSI(%a,%x,%lx,",\r
     IScsi->iSCSITargetName,\r
-    IScsi->TargetPortalGroupTag,\r
+    (UINTN) IScsi->TargetPortalGroupTag,\r
     IScsi->Lun\r
     );\r
 \r
@@ -1214,6 +1216,27 @@ DevPathNodeUnknown (
 {\r
   CatPrint (Str, L"?");\r
 }\r
+/**\r
+  Convert Device Path to a Unicode string for printing.\r
+\r
+  @param Str             The buffer holding the output string.\r
+                         This buffer contains the length of the\r
+                         string and the maximum length reserved\r
+                         for the string buffer.\r
+  @param DevPath         The device path.\r
+\r
+**/\r
+VOID\r
+DevPathFvPath (\r
+  IN OUT POOL_PRINT       *Str,\r
+  IN VOID                 *DevPath\r
+  )\r
+{\r
+  MEDIA_FW_VOL_DEVICE_PATH *FvPath;\r
+\r
+  FvPath = DevPath;\r
+  CatPrint (Str, L"Fv(%g)", &FvPath->FvName);\r
+}\r
 \r
 DEVICE_PATH_STRING_TABLE  DevPathTable[] = {\r
   {\r
@@ -1366,6 +1389,11 @@ DEVICE_PATH_STRING_TABLE  DevPathTable[] = {
     MEDIA_PROTOCOL_DP,\r
     DevPathMediaProtocol\r
   },\r
+  {\r
+    MEDIA_DEVICE_PATH,\r
+    MEDIA_PIWG_FW_VOL_DP,\r
+    DevPathFvPath,\r
+  },\r
   {\r
     MEDIA_DEVICE_PATH,\r
     MEDIA_PIWG_FW_FILE_DP,\r