diff options
-rw-r--r-- | src/drivers/ao_sdcard.c | 6 | ||||
-rw-r--r-- | src/drivers/ao_sdcard.h | 1 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/drivers/ao_sdcard.c b/src/drivers/ao_sdcard.c index 6314a30c..c13017f0 100644 --- a/src/drivers/ao_sdcard.c +++ b/src/drivers/ao_sdcard.c @@ -346,14 +346,16 @@ ao_sdcard_setup(void) sdver2 = 1; } - for (i = 0; i < SDCARD_IDLE_RETRY; i++) { + for (i = 0; i < SDCARD_OP_COND_RETRY; i++) { + ao_delay(AO_MS_TO_TICKS(10)); ret = ao_sdcard_app_send_op_cond(arg); if (ret != SDCARD_STATUS_IDLE_STATE) break; } if (ret != SDCARD_STATUS_READY_STATE) { /* MMC */ - for (i = 0; i < SDCARD_IDLE_RETRY; i++) { + for (i = 0; i < SDCARD_OP_COND_RETRY; i++) { + ao_delay(AO_MS_TO_TICKS(10)); ret = ao_sdcard_send_op_cond(); if (ret != SDCARD_STATUS_IDLE_STATE) break; diff --git a/src/drivers/ao_sdcard.h b/src/drivers/ao_sdcard.h index 0d1464b3..50b70c73 100644 --- a/src/drivers/ao_sdcard.h +++ b/src/drivers/ao_sdcard.h @@ -69,6 +69,7 @@ ao_sdcard_init(void); #define SDCARD_BUSY_TIMEOUT AO_MS_TO_TICKS(20) #define SDCARD_BLOCK_TIMEOUT AO_MS_TO_TICKS(200) #define SDCARD_IDLE_RETRY 10 +#define SDCARD_OP_COND_RETRY 10 enum ao_sdtype { ao_sdtype_unknown, |