aboutsummaryrefslogtreecommitdiff
path: root/include/mmc.h
diff options
context:
space:
mode:
authorJean-Jacques Hiblot <jjhiblot@ti.com>2019-07-02 10:53:53 +0200
committerPeng Fan <peng.fan@nxp.com>2019-07-15 10:16:49 +0800
commitcd0b80ec9c97bdd9fb6642671efad8ef3cb33858 (patch)
treebc7e8387fdbcb8ecc01046ef8fdcf434e73b449a /include/mmc.h
parent863d10044aae5ee40a9cf9a76aed62822cf45c30 (diff)
downloadu-boot-cd0b80ec9c97bdd9fb6642671efad8ef3cb33858.zip
u-boot-cd0b80ec9c97bdd9fb6642671efad8ef3cb33858.tar.gz
u-boot-cd0b80ec9c97bdd9fb6642671efad8ef3cb33858.tar.bz2
mmc: if possible, poll the busy state using DAT0
Using the DAT0 line as a rdy/busy line is an alternative to reading the status register of the card. It especially useful in situation where the bus is not in a good shape, like when modes are switched. This is also how the linux driver behaves. Note of warning: As per the specification, while polling on DAT0 the CLK must not turned off: "[...] Without a clock edge the Device (unless previously disconnected by a deselect command (CMD7)) will force the DAT0 line down, forever. [...]" Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
Diffstat (limited to 'include/mmc.h')
-rw-r--r--include/mmc.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/include/mmc.h b/include/mmc.h
index 7f95c35..cf83b74 100644
--- a/include/mmc.h
+++ b/include/mmc.h
@@ -445,7 +445,6 @@ struct dm_mmc_ops {
int (*execute_tuning)(struct udevice *dev, uint opcode);
#endif
-#if CONFIG_IS_ENABLED(MMC_UHS_SUPPORT)
/**
* wait_dat0() - wait until dat0 is in the target state
* (CLK must be running during the wait)
@@ -456,7 +455,6 @@ struct dm_mmc_ops {
* @return 0 if dat0 is in the target state, -ve on error
*/
int (*wait_dat0)(struct udevice *dev, int state, int timeout);
-#endif
};
#define mmc_get_ops(dev) ((struct dm_mmc_ops *)(dev)->driver->ops)