summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2013-03-31 12:23:31 -0700
committerKeith Packard <keithp@keithp.com>2013-03-31 12:23:31 -0700
commit7afcec1a1dce140dfa569469df4ef42ed407a742 (patch)
tree0f07f0de13588bd617297100c61dd2c203195831 /src
parenta0595d94c7deea29d9e3d4bcbc106b9bed5ee103 (diff)
altos: Add sdcard read/write tracing
This just dumps info in trace mode about read and write commands Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src')
-rw-r--r--src/drivers/ao_sdcard.c10
-rw-r--r--src/drivers/ao_sdcard.h2
2 files changed, 10 insertions, 2 deletions
diff --git a/src/drivers/ao_sdcard.c b/src/drivers/ao_sdcard.c
index 4eef6625..952000a7 100644
--- a/src/drivers/ao_sdcard.c
+++ b/src/drivers/ao_sdcard.c
@@ -27,8 +27,12 @@
#define ao_sdcard_select() ao_gpio_set(AO_SDCARD_SPI_CS_PORT,AO_SDCARD_SPI_CS_PIN,AO_SDCARD_SPI_CS,0)
#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 0
+/* Spew SD tracing */
+#define SDCARD_TRACE 0
+
static uint8_t initialized;
static uint8_t present;
static uint8_t mutex;
@@ -37,7 +41,7 @@ static enum ao_sdtype sdtype;
#define ao_sdcard_lock() ao_mutex_get(&mutex)
#define ao_sdcard_unlock() ao_mutex_put(&mutex)
-#if 0
+#if SDCARD_TRACE
#define DBG(...) printf(__VA_ARGS__)
#else
#define DBG(...)
@@ -369,6 +373,7 @@ ao_sdcard_read_block(uint32_t block, uint8_t *data)
ao_sdcard_unlock();
return 0;
}
+ DBG("read block %d\n", block);
if (sdtype != ao_sdtype_sd2block)
block <<= 9;
ao_sdcard_get();
@@ -390,6 +395,7 @@ bail:
ao_sdcard_deselect();
ao_sdcard_put();
ao_sdcard_unlock();
+ DBG("read %s\n", ret == SDCARD_STATUS_READY_STATE ? "success" : "failure");
return ret == SDCARD_STATUS_READY_STATE;
}
@@ -415,6 +421,7 @@ ao_sdcard_write_block(uint32_t block, uint8_t *data)
ao_sdcard_unlock();
return 0;
}
+ DBG("write block %d\n", block);
if (sdtype != ao_sdtype_sd2block)
block <<= 9;
ao_sdcard_get();
@@ -455,6 +462,7 @@ bail:
ao_sdcard_deselect();
ao_sdcard_put();
ao_sdcard_unlock();
+ DBG("write %s\n", ret == SDCARD_STATUS_READY_STATE ? "success" : "failure");
return ret == SDCARD_STATUS_READY_STATE;
}
diff --git a/src/drivers/ao_sdcard.h b/src/drivers/ao_sdcard.h
index 35e81ced..be0ff1f3 100644
--- a/src/drivers/ao_sdcard.h
+++ b/src/drivers/ao_sdcard.h
@@ -63,7 +63,7 @@ ao_sdcard_init(void);
#define SDCARD_CMD_TIMEOUT 100
#define SDCARD_IDLE_WAIT 100
#define SDCARD_BLOCK_TIMEOUT 100
-#define SDCARD_IDLE_TIMEOUT 1000
+#define SDCARD_IDLE_TIMEOUT 10000
enum ao_sdtype {
ao_sdtype_unknown,