]> git.proxmox.com Git - mirror_edk2.git/commitdiff
EmbeddedPkg/MmcDxe: Moved all the 'Print*()' functions to MmcDebug.c
authorOlivier Martin <olivier.martin@arm.com>
Fri, 30 Aug 2013 11:51:51 +0000 (11:51 +0000)
committeroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 30 Aug 2013 11:51:51 +0000 (11:51 +0000)
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14612 6f19259b-4bc3-4df7-8a09-765794883524

EmbeddedPkg/Universal/MmcDxe/Mmc.c
EmbeddedPkg/Universal/MmcDxe/Mmc.h
EmbeddedPkg/Universal/MmcDxe/MmcBlockIo.c
EmbeddedPkg/Universal/MmcDxe/MmcDebug.c [new file with mode: 0644]
EmbeddedPkg/Universal/MmcDxe/MmcDxe.inf

index b4f7a78a554b16685d5cb5f6dea599d2bbc3a43a..9327bd6337a16b27b2caf088544760c68e53f149 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Main file of the MMC Dxe driver. The driver entrypoint is defined into this file.\r
 \r
 /** @file\r
   Main file of the MMC Dxe driver. The driver entrypoint is defined into this file.\r
 \r
-  Copyright (c) 2011, ARM Limited. All rights reserved.\r
+  Copyright (c) 2011-2013, ARM Limited. All rights reserved.\r
   \r
   This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   \r
   This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
 **/\r
 \r
 #include <Protocol/DevicePath.h>\r
 **/\r
 \r
 #include <Protocol/DevicePath.h>\r
-#include <Protocol/MmcHost.h>\r
 \r
 #include <Library/BaseLib.h>\r
 #include <Library/BaseMemoryLib.h>\r
 #include <Library/MemoryAllocationLib.h>\r
 #include <Library/UefiBootServicesTableLib.h>\r
 #include <Library/DevicePathLib.h>\r
 \r
 #include <Library/BaseLib.h>\r
 #include <Library/BaseMemoryLib.h>\r
 #include <Library/MemoryAllocationLib.h>\r
 #include <Library/UefiBootServicesTableLib.h>\r
 #include <Library/DevicePathLib.h>\r
-#include <Library/DebugLib.h>\r
 \r
 #include "Mmc.h"\r
 \r
 \r
 #include "Mmc.h"\r
 \r
index 0c51428e9eac9494ccccfba98dd70ea434ba2381..9104f60ae01afe5d3c6ff999356694eaa68e0173 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Main Header file for the MMC DXE driver\r
 \r
 /** @file\r
   Main Header file for the MMC DXE driver\r
 \r
-  Copyright (c) 2011, ARM Limited. All rights reserved.\r
+  Copyright (c) 2011-2013, ARM Limited. All rights reserved.\r
   \r
   This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   \r
   This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
@@ -24,6 +24,7 @@
 #include <Protocol/MmcHost.h>\r
 \r
 #include <Library/UefiLib.h>\r
 #include <Protocol/MmcHost.h>\r
 \r
 #include <Library/UefiLib.h>\r
+#include <Library/DebugLib.h>\r
 \r
 #define MMC_TRACE(txt)  DEBUG((EFI_D_BLKIO, "MMC: " txt "\n"))\r
 \r
 \r
 #define MMC_TRACE(txt)  DEBUG((EFI_D_BLKIO, "MMC: " txt "\n"))\r
 \r
@@ -299,4 +300,29 @@ CheckCardsCallback (
   IN  VOID        *Context\r
   );\r
 \r
   IN  VOID        *Context\r
   );\r
 \r
+VOID\r
+PrintCSD (\r
+  IN UINT32* Csd\r
+  );\r
+\r
+VOID\r
+PrintRCA (\r
+  IN UINT32 Rca\r
+  );\r
+\r
+VOID\r
+PrintOCR (\r
+  IN UINT32 Ocr\r
+  );\r
+\r
+VOID\r
+PrintResponseR1 (\r
+  IN  UINT32 Response\r
+  );\r
+\r
+VOID\r
+PrintCID (\r
+  IN UINT32* Cid\r
+  );\r
+\r
 #endif\r
 #endif\r
index 82ec5a7a2d18ca8bf5659fa4b552ebc13b0ee3f7..4b9b64e46f0bd7cac74e3a184d53516bd97181e8 100644 (file)
@@ -12,8 +12,6 @@
 *\r
 **/\r
 \r
 *\r
 **/\r
 \r
-#include <Protocol/MmcHost.h>\r
-#include <Library/DebugLib.h>\r
 #include <Library/BaseMemoryLib.h>\r
 #include <Library/TimerLib.h>\r
 \r
 #include <Library/BaseMemoryLib.h>\r
 #include <Library/TimerLib.h>\r
 \r
@@ -32,130 +30,10 @@ MmcNotifyState (
   return MmcHostInstance->MmcHost->NotifyState (MmcHostInstance->MmcHost, State);\r
 }\r
 \r
   return MmcHostInstance->MmcHost->NotifyState (MmcHostInstance->MmcHost, State);\r
 }\r
 \r
-VOID\r
-PrintOCR (\r
-  IN UINT32 Ocr\r
-  )\r
-{\r
-  UINTN MinV;\r
-  UINTN MaxV;\r
-  UINTN Volts;\r
-  UINTN Loop;\r
-\r
-  MinV  = 36;  // 3.6\r
-  MaxV  = 20;  // 2.0\r
-  Volts = 20;  // 2.0\r
-\r
-  // The MMC register bits [23:8] indicate the working range of the card\r
-  for (Loop = 8; Loop < 24; Loop++) {\r
-    if (Ocr & (1 << Loop)) {\r
-      if (MinV > Volts) MinV = Volts;\r
-      if (MaxV < Volts) MaxV = Volts + 1;\r
-    }\r
-    Volts = Volts + 1;\r
-  }\r
-\r
-  DEBUG ((EFI_D_ERROR, "- PrintOCR Ocr (0x%X)\n",Ocr));\r
-  DEBUG ((EFI_D_ERROR, "\t- Card operating voltage: %d.%d to %d.%d\n", MinV/10, MinV % 10, MaxV/10, MaxV % 10));\r
-  if (((Ocr >> 29) & 3) == 0) {\r
-    DEBUG ((EFI_D_ERROR, "\t- AccessMode: Byte Mode\n"));\r
-  } else {\r
-    DEBUG ((EFI_D_ERROR, "\t- AccessMode: Block Mode (0x%X)\n", ((Ocr >> 29) & 3)));\r
-  }\r
-\r
-  if (Ocr & MMC_OCR_POWERUP) {\r
-    DEBUG ((EFI_D_ERROR, "\t- PowerUp\n"));\r
-  } else {\r
-    DEBUG ((EFI_D_ERROR, "\t- Voltage Not Supported\n"));\r
-  }\r
-}\r
-\r
-VOID PrintCID (\r
-  IN UINT32* Cid\r
-  )\r
-{\r
-  DEBUG ((EFI_D_ERROR, "- PrintCID\n"));\r
-  DEBUG ((EFI_D_ERROR, "\t- Manufacturing date: %d/%d\n", (Cid[0] >> 8) & 0xF, (Cid[0] >> 12) & 0xFF));\r
-  DEBUG ((EFI_D_ERROR, "\t- Product serial number: 0x%X%X\n", Cid[1] & 0xFFFFFF, (Cid[0] >> 24) & 0xFF));\r
-  DEBUG ((EFI_D_ERROR, "\t- Product revision: %d\n", Cid[1] >> 24));\r
-  //DEBUG ((EFI_D_ERROR, "\t- Product name: %s\n", (char*)(Cid + 2)));\r
-  DEBUG ((EFI_D_ERROR, "\t- OEM ID: %c%c\n", (Cid[3] >> 8) & 0xFF, (Cid[3] >> 16) & 0xFF));\r
-}\r
-\r
-#if !defined(MDEPKG_NDEBUG)\r
-CONST CHAR8* mStrUnit[] = { "100kbit/s", "1Mbit/s", "10Mbit/s", "100MBit/s",\r
-                            "Unknown", "Unknown", "Unknown", "Unknown" };\r
-CONST CHAR8* mStrValue[] = { "1.0", "1.2", "1.3", "1.5", "2.0", "2.5", "3.0", "3.5", "4.0", "4.5", "5.0",\r
-                             "Unknown", "Unknown", "Unknown", "Unknown" };\r
-#endif\r
-\r
-VOID\r
-PrintCSD (\r
-  IN UINT32* Csd\r
-  )\r
-{\r
-  UINTN Value;\r
-\r
-  if (((Csd[2] >> 30) & 0x3) == 0) {\r
-    DEBUG ((EFI_D_ERROR, "- PrintCSD Version 1.01-1.10/Version 2.00/Standard Capacity\n"));\r
-  } else if (((Csd[2] >> 30) & 0x3) == 1) {\r
-    DEBUG ((EFI_D_ERROR, "- PrintCSD Version 2.00/High Capacity\n"));\r
-  } else {\r
-    DEBUG ((EFI_D_ERROR, "- PrintCSD Version Higher than v3.3\n"));\r
-  }\r
-\r
-  DEBUG ((EFI_D_ERROR, "\t- Supported card command class: 0x%X\n", MMC_CSD_GET_CCC(Csd)));\r
-  DEBUG ((EFI_D_ERROR, "\t- Speed: %a %a\n",mStrValue[(MMC_CSD_GET_TRANSPEED(Csd) >> 3) & 0xF],mStrUnit[MMC_CSD_GET_TRANSPEED(Csd) & 7]));\r
-  DEBUG ((EFI_D_ERROR, "\t- Maximum Read Data Block: %d\n",2 << (MMC_CSD_GET_READBLLEN(Csd)-1)));\r
-  DEBUG ((EFI_D_ERROR, "\t- Maximum Write Data Block: %d\n",2 << (MMC_CSD_GET_WRITEBLLEN(Csd)-1)));\r
-\r
-  if (!MMC_CSD_GET_FILEFORMATGRP (Csd)) {\r
-    Value = MMC_CSD_GET_FILEFORMAT (Csd);\r
-    if (Value == 0)         DEBUG ((EFI_D_ERROR, "\t- Format (0): Hard disk-like file system with partition table\n"));\r
-    else if (Value == 1)    DEBUG ((EFI_D_ERROR, "\t- Format (1): DOS FAT (floppy-like) with boot sector only (no partition table)\n"));\r
-    else if (Value == 2)    DEBUG ((EFI_D_ERROR, "\t- Format (2): Universal File Format\n"));\r
-    else                    DEBUG ((EFI_D_ERROR, "\t- Format (3): Others/Unknown\n"));\r
-  } else {\r
-    DEBUG ((EFI_D_ERROR, "\t- Format: Reserved\n"));\r
-  }\r
-}\r
-\r
-VOID\r
-PrintRCA (\r
-  IN UINT32 Rca\r
-  )\r
-{\r
-  DEBUG ((EFI_D_ERROR, "- PrintRCA: 0x%X\n", Rca));\r
-  DEBUG ((EFI_D_ERROR, "\t- Status: 0x%X\n", Rca & 0xFFFF));\r
-  DEBUG ((EFI_D_ERROR, "\t- RCA: 0x%X\n", (Rca >> 16) & 0xFFFF));\r
-}\r
-\r
-VOID\r
-PrintResponseR1 (\r
-  IN  UINT32 Response\r
-  )\r
-{\r
-  DEBUG ((EFI_D_INFO, "Response: 0x%X\n", Response));\r
-  if (Response & MMC_R0_READY_FOR_DATA) {\r
-    DEBUG ((EFI_D_INFO, "\t- READY_FOR_DATA\n"));\r
-  }\r
-\r
-  if (((Response >> 9) & 0xF) == 0)         DEBUG ((EFI_D_INFO, "\t- State: Idle\n"));\r
-  else if (((Response >> 9) & 0xF) == 1)    DEBUG ((EFI_D_INFO, "\t- State: Ready\n"));\r
-  else if (((Response >> 9) & 0xF) == 2)    DEBUG ((EFI_D_INFO, "\t- State: Ident\n"));\r
-  else if (((Response >> 9) & 0xF) == 3)    DEBUG ((EFI_D_INFO, "\t- State: StandBy\n"));\r
-  else if (((Response >> 9) & 0xF) == 4)    DEBUG ((EFI_D_INFO, "\t- State: Tran\n"));\r
-  else if (((Response >> 9) & 0xF) == 5)    DEBUG ((EFI_D_INFO, "\t- State: Data\n"));\r
-  else if (((Response >> 9) & 0xF) == 6)    DEBUG ((EFI_D_INFO, "\t- State: Rcv\n"));\r
-  else if (((Response >> 9) & 0xF) == 7)    DEBUG ((EFI_D_INFO, "\t- State: Prg\n"));\r
-  else if (((Response >> 9) & 0xF) == 8)    DEBUG ((EFI_D_INFO, "\t- State: Dis\n"));\r
-  else                                      DEBUG ((EFI_D_INFO, "\t- State: Reserved\n"));\r
-}\r
-\r
 EFI_STATUS\r
 EFIAPI\r
 MmcGetCardStatus (\r
 EFI_STATUS\r
 EFIAPI\r
 MmcGetCardStatus (\r
-       IN MMC_HOST_INSTANCE     *MmcHostInstance\r
+  IN MMC_HOST_INSTANCE     *MmcHostInstance\r
   )\r
 {\r
   EFI_STATUS              Status;\r
   )\r
 {\r
   EFI_STATUS              Status;\r
diff --git a/EmbeddedPkg/Universal/MmcDxe/MmcDebug.c b/EmbeddedPkg/Universal/MmcDxe/MmcDebug.c
new file mode 100644 (file)
index 0000000..a5d3b63
--- /dev/null
@@ -0,0 +1,168 @@
+/** @file\r
+*\r
+*  Copyright (c) 2011-2013, ARM Limited. All rights reserved.\r
+*\r
+*  This program and the accompanying materials\r
+*  are licensed and made available under the terms and conditions of the BSD License\r
+*  which accompanies this distribution.  The full text of the license may be found at\r
+*  http://opensource.org/licenses/bsd-license.php\r
+*\r
+*  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+*  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+*\r
+**/\r
+\r
+#include "Mmc.h"\r
+\r
+#if !defined(MDEPKG_NDEBUG)\r
+CONST CHAR8* mStrUnit[] = { "100kbit/s", "1Mbit/s", "10Mbit/s", "100MBit/s",\r
+                            "Unknown", "Unknown", "Unknown", "Unknown" };\r
+CONST CHAR8* mStrValue[] = { "1.0", "1.2", "1.3", "1.5", "2.0", "2.5", "3.0", "3.5", "4.0", "4.5", "5.0",\r
+                             "Unknown", "Unknown", "Unknown", "Unknown" };\r
+#endif\r
+\r
+VOID\r
+PrintCID (\r
+  IN UINT32* Cid\r
+  )\r
+{\r
+  DEBUG ((EFI_D_ERROR, "- PrintCID\n"));\r
+  DEBUG ((EFI_D_ERROR, "\t- Manufacturing date: %d/%d\n", (Cid[0] >> 8) & 0xF, (Cid[0] >> 12) & 0xFF));\r
+  DEBUG ((EFI_D_ERROR, "\t- Product serial number: 0x%X%X\n", Cid[1] & 0xFFFFFF, (Cid[0] >> 24) & 0xFF));\r
+  DEBUG ((EFI_D_ERROR, "\t- Product revision: %d\n", Cid[1] >> 24));\r
+  //DEBUG ((EFI_D_ERROR, "\t- Product name: %s\n", (char*)(Cid + 2)));\r
+  DEBUG ((EFI_D_ERROR, "\t- OEM ID: %c%c\n", (Cid[3] >> 8) & 0xFF, (Cid[3] >> 16) & 0xFF));\r
+}\r
+\r
+\r
+VOID\r
+PrintCSD (\r
+  IN UINT32* Csd\r
+  )\r
+{\r
+  UINTN Value;\r
+\r
+  if (((Csd[2] >> 30) & 0x3) == 0) {\r
+    DEBUG ((EFI_D_ERROR, "- PrintCSD Version 1.01-1.10/Version 2.00/Standard Capacity\n"));\r
+  } else if (((Csd[2] >> 30) & 0x3) == 1) {\r
+    DEBUG ((EFI_D_ERROR, "- PrintCSD Version 2.00/High Capacity\n"));\r
+  } else {\r
+    DEBUG ((EFI_D_ERROR, "- PrintCSD Version Higher than v3.3\n"));\r
+  }\r
+\r
+  DEBUG ((EFI_D_ERROR, "\t- Supported card command class: 0x%X\n", MMC_CSD_GET_CCC (Csd)));\r
+  DEBUG ((EFI_D_ERROR, "\t- Speed: %a %a\n",mStrValue[(MMC_CSD_GET_TRANSPEED (Csd) >> 3) & 0xF],mStrUnit[MMC_CSD_GET_TRANSPEED (Csd) & 7]));\r
+  DEBUG ((EFI_D_ERROR, "\t- Maximum Read Data Block: %d\n",2 << (MMC_CSD_GET_READBLLEN (Csd)-1)));\r
+  DEBUG ((EFI_D_ERROR, "\t- Maximum Write Data Block: %d\n",2 << (MMC_CSD_GET_WRITEBLLEN (Csd)-1)));\r
+\r
+  if (!MMC_CSD_GET_FILEFORMATGRP (Csd)) {\r
+    Value = MMC_CSD_GET_FILEFORMAT (Csd);\r
+    if (Value == 0) {\r
+      DEBUG ((EFI_D_ERROR, "\t- Format (0): Hard disk-like file system with partition table\n"));\r
+    } else if (Value == 1) {\r
+      DEBUG ((EFI_D_ERROR, "\t- Format (1): DOS FAT (floppy-like) with boot sector only (no partition table)\n"));\r
+    } else if (Value == 2) {\r
+      DEBUG ((EFI_D_ERROR, "\t- Format (2): Universal File Format\n"));\r
+    } else {\r
+      DEBUG ((EFI_D_ERROR, "\t- Format (3): Others/Unknown\n"));\r
+    }\r
+  } else {\r
+    DEBUG ((EFI_D_ERROR, "\t- Format: Reserved\n"));\r
+  }\r
+}\r
+\r
+VOID\r
+PrintRCA (\r
+  IN UINT32 Rca\r
+  )\r
+{\r
+  DEBUG ((EFI_D_ERROR, "- PrintRCA: 0x%X\n", Rca));\r
+  DEBUG ((EFI_D_ERROR, "\t- Status: 0x%X\n", Rca & 0xFFFF));\r
+  DEBUG ((EFI_D_ERROR, "\t- RCA: 0x%X\n", (Rca >> 16) & 0xFFFF));\r
+}\r
+\r
+VOID\r
+PrintOCR (\r
+  IN UINT32 Ocr\r
+  )\r
+{\r
+  UINTN MinV;\r
+  UINTN MaxV;\r
+  UINTN Volts;\r
+  UINTN Loop;\r
+\r
+  MinV  = 36;  // 3.6\r
+  MaxV  = 20;  // 2.0\r
+  Volts = 20;  // 2.0\r
+\r
+  // The MMC register bits [23:8] indicate the working range of the card\r
+  for (Loop = 8; Loop < 24; Loop++) {\r
+    if (Ocr & (1 << Loop)) {\r
+      if (MinV > Volts) {\r
+        MinV = Volts;\r
+      }\r
+      if (MaxV < Volts) {\r
+        MaxV = Volts + 1;\r
+      }\r
+    }\r
+    Volts++;\r
+  }\r
+\r
+  DEBUG ((EFI_D_ERROR, "- PrintOCR Ocr (0x%X)\n",Ocr));\r
+  DEBUG ((EFI_D_ERROR, "\t- Card operating voltage: %d.%d to %d.%d\n", MinV/10, MinV % 10, MaxV/10, MaxV % 10));\r
+  if (((Ocr >> 29) & 3) == 0) {\r
+    DEBUG ((EFI_D_ERROR, "\t- AccessMode: Byte Mode\n"));\r
+  } else {\r
+    DEBUG ((EFI_D_ERROR, "\t- AccessMode: Block Mode (0x%X)\n", ((Ocr >> 29) & 3)));\r
+  }\r
+\r
+  if (Ocr & MMC_OCR_POWERUP) {\r
+    DEBUG ((EFI_D_ERROR, "\t- PowerUp\n"));\r
+  } else {\r
+    DEBUG ((EFI_D_ERROR, "\t- Voltage Not Supported\n"));\r
+  }\r
+}\r
+\r
+VOID\r
+PrintResponseR1 (\r
+  IN  UINT32 Response\r
+  )\r
+{\r
+  DEBUG ((EFI_D_INFO, "Response: 0x%X\n", Response));\r
+  if (Response & MMC_R0_READY_FOR_DATA) {\r
+    DEBUG ((EFI_D_INFO, "\t- READY_FOR_DATA\n"));\r
+  }\r
+\r
+  switch ((Response >> 9) & 0xF) {\r
+  case 0:\r
+    DEBUG ((EFI_D_INFO, "\t- State: Idle\n"));\r
+    break;\r
+  case 1:\r
+    DEBUG ((EFI_D_INFO, "\t- State: Ready\n"));\r
+    break;\r
+  case 2:\r
+    DEBUG ((EFI_D_INFO, "\t- State: Ident\n"));\r
+    break;\r
+  case 3:\r
+    DEBUG ((EFI_D_INFO, "\t- State: StandBy\n"));\r
+    break;\r
+  case 4:\r
+    DEBUG ((EFI_D_INFO, "\t- State: Tran\n"));\r
+    break;\r
+  case 5:\r
+    DEBUG ((EFI_D_INFO, "\t- State: Data\n"));\r
+    break;\r
+  case 6:\r
+    DEBUG ((EFI_D_INFO, "\t- State: Rcv\n"));\r
+    break;\r
+  case 7:\r
+    DEBUG ((EFI_D_INFO, "\t- State: Prg\n"));\r
+    break;\r
+  case 8:\r
+    DEBUG ((EFI_D_INFO, "\t- State: Dis\n"));\r
+    break;\r
+  default:\r
+    DEBUG ((EFI_D_INFO, "\t- State: Reserved\n"));\r
+    break;\r
+  }\r
+}\r
index 9deceea9c17b68206d55461afe364a3b75dc571b..80e15bb8505bfe073c9f78faf30084507286fc3b 100644 (file)
@@ -1,7 +1,7 @@
 #/** @file\r
 #  Build file for the MMC DXE driver\r
 #\r
 #/** @file\r
 #  Build file for the MMC DXE driver\r
 #\r
-#  Copyright (c) 2011, ARM Limited. All rights reserved.\r
+#  Copyright (c) 2011-2013, ARM Limited. All rights reserved.\r
 #  \r
 #  This program and the accompanying materials                          \r
 #  are licensed and made available under the terms and conditions of the BSD License         \r
 #  \r
 #  This program and the accompanying materials                          \r
 #  are licensed and made available under the terms and conditions of the BSD License         \r
@@ -26,6 +26,7 @@
   ComponentName.c\r
   Mmc.c\r
   MmcBlockIo.c\r
   ComponentName.c\r
   Mmc.c\r
   MmcBlockIo.c\r
+  MmcDebug.c\r
   Diagnostics.c\r
 \r
 [Packages]\r
   Diagnostics.c\r
 \r
 [Packages]\r