aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mmc/protocol.h
diff options
context:
space:
mode:
authorPierre Ossman <drzeus@drzeus.cx>2006-11-08 17:03:10 -0500
committerPierre Ossman <drzeus@drzeus.cx>2006-12-01 12:53:37 -0500
commit7ccd266e676a3f0c6f8f897f58b684cac3dd1650 (patch)
treeaba8632fc523c5c663a56876ce67c580ce8d38eb /include/linux/mmc/protocol.h
parent73778120c4088a0a7b59c4c378904f7a230b4820 (diff)
mmc: Support for high speed SD cards
Modern SD cards support a clock speed of 50 MHz. Make sure we test for this capability and do the song and dance required to activate it. Activating high speed support actually modifies the TRAN_SPEED field of the CSD. But as the spec says that the cards must report 50 MHz, we might as well skip re-reading the CSD. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Diffstat (limited to 'include/linux/mmc/protocol.h')
-rw-r--r--include/linux/mmc/protocol.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/include/linux/mmc/protocol.h b/include/linux/mmc/protocol.h
index 45c51fd85786..2dce60c43f4b 100644
--- a/include/linux/mmc/protocol.h
+++ b/include/linux/mmc/protocol.h
@@ -82,6 +82,7 @@
82 /* class 8 */ 82 /* class 8 */
83/* This is basically the same command as for MMC with some quirks. */ 83/* This is basically the same command as for MMC with some quirks. */
84#define SD_SEND_RELATIVE_ADDR 3 /* bcr R6 */ 84#define SD_SEND_RELATIVE_ADDR 3 /* bcr R6 */
85#define SD_SWITCH 6 /* adtc [31:0] See below R1 */
85 86
86 /* Application commands */ 87 /* Application commands */
87#define SD_APP_SET_BUS_WIDTH 6 /* ac [1:0] bus width R1 */ 88#define SD_APP_SET_BUS_WIDTH 6 /* ac [1:0] bus width R1 */
@@ -101,6 +102,19 @@
101 */ 102 */
102 103
103/* 104/*
105 * SD_SWITCH argument format:
106 *
107 * [31] Check (0) or switch (1)
108 * [30:24] Reserved (0)
109 * [23:20] Function group 6
110 * [19:16] Function group 5
111 * [15:12] Function group 4
112 * [11:8] Function group 3
113 * [7:4] Function group 2
114 * [3:0] Function group 1
115 */
116
117/*
104 MMC status in R1 118 MMC status in R1
105 Type 119 Type
106 e : error bit 120 e : error bit
@@ -285,6 +299,14 @@ struct _mmc_csd {
285#define MMC_SWITCH_MODE_WRITE_BYTE 0x03 /* Set target to value */ 299#define MMC_SWITCH_MODE_WRITE_BYTE 0x03 /* Set target to value */
286 300
287/* 301/*
302 * SCR field definitions
303 */
304
305#define SCR_SPEC_VER_0 0 /* Implements system specification 1.0 - 1.01 */
306#define SCR_SPEC_VER_1 1 /* Implements system specification 1.10 */
307#define SCR_SPEC_VER_2 2 /* Implements system specification 2.00 */
308
309/*
288 * SD bus widths 310 * SD bus widths
289 */ 311 */
290#define SD_BUS_WIDTH_1 0 312#define SD_BUS_WIDTH_1 0