Browse Source

mmc: core: comment on why sdio_reset is done at init time

sdio_reset sends a CMD52 to reset the sdio card.  This is highly
recommended for sdio cards being reinitialized.  Since we do not
know if the card is being reinitialized we just send the command.
SD/eMMC cards are supposed to ignore the CMD before the CMD0.
Document why we are doing this.

Signed-off-by: Philip Rakity <prakity@marvell.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
Philip Rakity 14 năm trước cách đây
mục cha
commit
2f94e55ae5
1 tập tin đã thay đổi với 6 bổ sung0 xóa
  1. 6 0
      drivers/mmc/core/core.c

+ 6 - 0
drivers/mmc/core/core.c

@@ -1494,6 +1494,12 @@ static int mmc_rescan_try_freq(struct mmc_host *host, unsigned freq)
 		mmc_hostname(host), __func__, host->f_init);
 #endif
 	mmc_power_up(host);
+
+	/*
+	 * sdio_reset sends CMD52 to reset card.  Since we do not know
+	 * if the card is being re-initialized, just send it.  CMD52
+	 * should be ignored by SD/eMMC cards.
+	 */
 	sdio_reset(host);
 	mmc_go_idle(host);