aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc/core/bus.c
diff options
context:
space:
mode:
authorAdrian Hunter <adrian.hunter@nokia.com>2010-08-24 06:20:26 -0400
committerChris Ball <cjb@laptop.org>2010-10-23 09:11:16 -0400
commit0f8d8ea64ec7c77ca5beb59534d386fe0235961a (patch)
tree8d6aebd250897aa33cb166994720497f40a9aaa6 /drivers/mmc/core/bus.c
parentdfc13e8402c75e7c2e0a52e123c0500a3259866b (diff)
mmc: Fixes for Dual Data Rate (DDR) support
The DDR support patch needs the following fixes: - The block driver does not need to know about DDR, any more than it needs to know about bus width. - Not only the card must be switched to DDR mode. The host controller must also be configured, which is done through the 'set_ios()' function. - Do not set the DDR mode state until after the switch command is successful. - Setting block length is not supported in DDR mode. Make that a core function and change the other place it is used (mmc_test) also. Signed-off-by: Adrian Hunter <adrian.hunter@nokia.com> Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc/core/bus.c')
-rw-r--r--drivers/mmc/core/bus.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/mmc/core/bus.c b/drivers/mmc/core/bus.c
index e70bd6641ce..da3c01b214e 100644
--- a/drivers/mmc/core/bus.c
+++ b/drivers/mmc/core/bus.c
@@ -253,14 +253,16 @@ int mmc_add_card(struct mmc_card *card)
253 } 253 }
254 254
255 if (mmc_host_is_spi(card->host)) { 255 if (mmc_host_is_spi(card->host)) {
256 printk(KERN_INFO "%s: new %s%s card on SPI\n", 256 printk(KERN_INFO "%s: new %s%s%s card on SPI\n",
257 mmc_hostname(card->host), 257 mmc_hostname(card->host),
258 mmc_card_highspeed(card) ? "high speed " : "", 258 mmc_card_highspeed(card) ? "high speed " : "",
259 mmc_card_ddr_mode(card) ? "DDR " : "",
259 type); 260 type);
260 } else { 261 } else {
261 printk(KERN_INFO "%s: new %s%s card at address %04x\n", 262 printk(KERN_INFO "%s: new %s%s%s card at address %04x\n",
262 mmc_hostname(card->host), 263 mmc_hostname(card->host),
263 mmc_card_highspeed(card) ? "high speed " : "", 264 mmc_card_highspeed(card) ? "high speed " : "",
265 mmc_card_ddr_mode(card) ? "DDR " : "",
264 type, card->rca); 266 type, card->rca);
265 } 267 }
266 268