diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/drivers/ao_sdcard.c | 18 | ||||
| -rw-r--r-- | src/drivers/ao_sdcard.h | 8 | 
2 files changed, 13 insertions, 13 deletions
| diff --git a/src/drivers/ao_sdcard.c b/src/drivers/ao_sdcard.c index 59ac9400..6314a30c 100644 --- a/src/drivers/ao_sdcard.c +++ b/src/drivers/ao_sdcard.c @@ -30,7 +30,7 @@ extern uint8_t ao_radio_mutex;  #define ao_sdcard_deselect()		ao_gpio_set(AO_SDCARD_SPI_CS_PORT,AO_SDCARD_SPI_CS_PIN,AO_SDCARD_SPI_CS,1)  /* Include SD card commands */ -#define SDCARD_DEBUG	1 +#define SDCARD_DEBUG	0  /* Spew SD tracing */  #define SDCARD_TRACE	0 @@ -326,11 +326,11 @@ ao_sdcard_setup(void)  	ao_sdcard_send_fixed(0xff, 10);  	/* Reset the card and get it into SPI mode */ -	for (i = 0; i < SDCARD_IDLE_WAIT; i++) { +	for (i = 0; i < SDCARD_IDLE_RETRY; i++) {  		if (ao_sdcard_go_idle_state() == SDCARD_STATUS_IDLE_STATE)  			break;  	} -	if (i == SDCARD_IDLE_WAIT) +	if (i == SDCARD_IDLE_RETRY)  		goto bail;  	/* Figure out what kind of card we have */ @@ -346,14 +346,14 @@ ao_sdcard_setup(void)  			sdver2 = 1;  		} -		for (i = 0; i < SDCARD_IDLE_WAIT; i++) { +		for (i = 0; i < SDCARD_IDLE_RETRY; i++) {  			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_WAIT; i++) { +			for (i = 0; i < SDCARD_IDLE_RETRY; i++) {  				ret = ao_sdcard_send_op_cond();  				if (ret != SDCARD_STATUS_IDLE_STATE)  					break; @@ -396,11 +396,11 @@ _ao_sdcard_reset(void)  	uint8_t	ret;  	uint8_t	response[10]; -	for (i = 0; i < SDCARD_IDLE_WAIT; i++) { +	for (i = 0; i < SDCARD_IDLE_RETRY; i++) {  		if (ao_sdcard_go_idle_state() == SDCARD_STATUS_IDLE_STATE)  			break;  	} -	if (i == SDCARD_IDLE_WAIT) { +	if (i == SDCARD_IDLE_RETRY) {  		ret = 0x3f;  		goto bail;  	} @@ -418,7 +418,7 @@ _ao_sdcard_reset(void)  			sdver2 = 1;  		} -		for (i = 0; i < SDCARD_IDLE_WAIT; i++) { +		for (i = 0; i < SDCARD_IDLE_RETRY; i++) {  			ret = ao_sdcard_app_send_op_cond(arg);  			if (ret != SDCARD_STATUS_IDLE_STATE)  				break; @@ -426,7 +426,7 @@ _ao_sdcard_reset(void)  		if (ret != SDCARD_STATUS_READY_STATE) {  			/* MMC */ -			for (i = 0; i < SDCARD_IDLE_WAIT; i++) { +			for (i = 0; i < SDCARD_IDLE_RETRY; i++) {  				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 e55a3dec..0d1464b3 100644 --- a/src/drivers/ao_sdcard.h +++ b/src/drivers/ao_sdcard.h @@ -65,10 +65,10 @@ ao_sdcard_init(void);  #define SDCARD_DATA_RES_MASK		0x1f  #define SDCARD_DATA_RES_ACCEPTED	0x05 -#define SDCARD_CMD_TIMEOUT		AO_MS_TO_TICKS(100) -#define SDCARD_BUSY_TIMEOUT		AO_MS_TO_TICKS(100) -#define SDCARD_IDLE_WAIT		10000 -#define SDCARD_BLOCK_TIMEOUT		AO_MS_TO_TICKS(1000) +#define SDCARD_CMD_TIMEOUT		AO_MS_TO_TICKS(20) +#define SDCARD_BUSY_TIMEOUT		AO_MS_TO_TICKS(20) +#define SDCARD_BLOCK_TIMEOUT		AO_MS_TO_TICKS(200) +#define SDCARD_IDLE_RETRY		10  enum ao_sdtype {  	ao_sdtype_unknown, | 
