summaryrefslogtreecommitdiff
path: root/ArmPkg
diff options
context:
space:
mode:
authoroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>2011-04-26 16:44:46 +0000
committeroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>2011-04-26 16:44:46 +0000
commit2b826e7350d7d3dc48be3debbff4e1007282fa33 (patch)
treebe70a0f43f7c99bd56707e463e4830756a62daea /ArmPkg
parent5d7ca12492d5ffb8380fcbe22b1082e8253c13ac (diff)
downloadedk2-platforms-2b826e7350d7d3dc48be3debbff4e1007282fa33.tar.xz
ArmPkg/MmcDxe: Introduce MMC_CMD_NO_CRC_RESPONSE flag
Some MMC Responses do not have a CRC field in their packets. This flag defines if the reponse to a MMC command skips the CRC field. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11586 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'ArmPkg')
-rw-r--r--ArmPkg/Include/Protocol/MmcHost.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/ArmPkg/Include/Protocol/MmcHost.h b/ArmPkg/Include/Protocol/MmcHost.h
index 096b479aa0..0196aad2ae 100644
--- a/ArmPkg/Include/Protocol/MmcHost.h
+++ b/ArmPkg/Include/Protocol/MmcHost.h
@@ -39,14 +39,16 @@ typedef UINT32 MMC_CMD;
#define MMC_CMD_WAIT_RESPONSE (1 << 16)
#define MMC_CMD_LONG_RESPONSE (1 << 17)
+#define MMC_CMD_NO_CRC_RESPONSE (1 << 18)
-#define MMC_INDX(CMD_INDX) (CMD_INDX & 0xFFFF)
+#define MMC_INDX(Index) ((Index) & 0xFFFF)
+#define MMC_GET_INDX(MmcCmd) ((MmcCmd) & 0xFFFF)
-#define MMC_CMD0 MMC_INDX(0)
-#define MMC_CMD1 (MMC_INDX(1) | MMC_CMD_WAIT_RESPONSE)
+#define MMC_CMD0 (MMC_INDX(0) | MMC_CMD_NO_CRC_RESPONSE)
+#define MMC_CMD1 (MMC_INDX(1) | MMC_CMD_WAIT_RESPONSE | MMC_CMD_NO_CRC_RESPONSE)
#define MMC_CMD2 (MMC_INDX(2) | MMC_CMD_WAIT_RESPONSE | MMC_CMD_LONG_RESPONSE)
#define MMC_CMD3 (MMC_INDX(3) | MMC_CMD_WAIT_RESPONSE)
-#define MMC_CMD5 (MMC_INDX(5) | MMC_CMD_WAIT_RESPONSE)
+#define MMC_CMD5 (MMC_INDX(5) | MMC_CMD_WAIT_RESPONSE | MMC_CMD_NO_CRC_RESPONSE)
#define MMC_CMD7 (MMC_INDX(7) | MMC_CMD_WAIT_RESPONSE)
#define MMC_CMD8 (MMC_INDX(8) | MMC_CMD_WAIT_RESPONSE)
#define MMC_CMD9 (MMC_INDX(9) | MMC_CMD_WAIT_RESPONSE | MMC_CMD_LONG_RESPONSE)
@@ -60,7 +62,7 @@ typedef UINT32 MMC_CMD;
#define MMC_CMD23 (MMC_INDX(23) | MMC_CMD_WAIT_RESPONSE)
#define MMC_CMD24 (MMC_INDX(24) | MMC_CMD_WAIT_RESPONSE)
#define MMC_CMD55 (MMC_INDX(55) | MMC_CMD_WAIT_RESPONSE)
-#define MMC_ACMD41 (MMC_INDX(41) | MMC_CMD_WAIT_RESPONSE)
+#define MMC_ACMD41 (MMC_INDX(41) | MMC_CMD_WAIT_RESPONSE | MMC_CMD_NO_CRC_RESPONSE)
typedef enum _MMC_STATE {
MmcInvalidState = 0,