aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/include
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2012-05-22 19:45:00 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2012-05-22 19:45:00 +0000
commit661cf8e8dc3793c0f716e783018514b9bd4e5551 (patch)
treec3b8a6b378371a9f652aa80a60fc6167b1f49768 /os/hal/include
parentbbea7269342e2418fd57a567d6d842b39e572f23 (diff)
downloadChibiOS-661cf8e8dc3793c0f716e783018514b9bd4e5551.tar.gz
ChibiOS-661cf8e8dc3793c0f716e783018514b9bd4e5551.tar.bz2
ChibiOS-661cf8e8dc3793c0f716e783018514b9bd4e5551.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@4230 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/include')
-rw-r--r--os/hal/include/mmc_spi.h9
-rw-r--r--os/hal/include/mmcsd.h4
-rw-r--r--os/hal/include/sdc.h1
3 files changed, 14 insertions, 0 deletions
diff --git a/os/hal/include/mmc_spi.h b/os/hal/include/mmc_spi.h
index a1a33c72d..307ffd3ca 100644
--- a/os/hal/include/mmc_spi.h
+++ b/os/hal/include/mmc_spi.h
@@ -158,6 +158,14 @@ typedef struct {
*/
bool_t block_addresses;
/**
+ * @brief Card CID.
+ */
+ uint32_t cid[4];
+ /**
+ * @brief Card CSD.
+ */
+ uint32_t csd[4];
+ /**
* @brief Total number of blocks in card.
*/
uint32_t capacity;
@@ -215,6 +223,7 @@ extern "C" {
bool_t mmcStopSequentialWrite(MMCDriver *mmcp);
bool_t mmcSync(MMCDriver *mmcp);
bool_t mmcGetInfo(MMCDriver *mmcp, BlockDeviceInfo *bdip);
+ bool_t mmcErase(MMCDriver *mmcp, uint32_t startblk, uint32_t endblk);
bool_t mmc_lld_is_card_inserted(MMCDriver *mmcp);
bool_t mmc_lld_is_write_protected(MMCDriver *mmcp);
#ifdef __cplusplus
diff --git a/os/hal/include/mmcsd.h b/os/hal/include/mmcsd.h
index b21c29442..7595e1202 100644
--- a/os/hal/include/mmcsd.h
+++ b/os/hal/include/mmcsd.h
@@ -77,6 +77,7 @@
#define MMCSD_CMD_SEL_DESEL_CARD 7
#define MMCSD_CMD_SEND_IF_COND 8
#define MMCSD_CMD_SEND_CSD 9
+#define MMCSD_CMD_SEND_CID 10
#define MMCSD_CMD_STOP_TRANSMISSION 12
#define MMCSD_CMD_SEND_STATUS 13
#define MMCSD_CMD_SET_BLOCKLEN 16
@@ -85,6 +86,9 @@
#define MMCSD_CMD_SET_BLOCK_COUNT 23
#define MMCSD_CMD_WRITE_BLOCK 24
#define MMCSD_CMD_WRITE_MULTIPLE_BLOCK 25
+#define MMCSD_CMD_ERASE_RW_BLK_START 32
+#define MMCSD_CMD_ERASE_RW_BLK_END 33
+#define MMCSD_CMD_ERASE 38
#define MMCSD_CMD_APP_OP_COND 41
#define MMCSD_CMD_LOCK_UNLOCK 42
#define MMCSD_CMD_APP_CMD 55
diff --git a/os/hal/include/sdc.h b/os/hal/include/sdc.h
index f54007f44..d2624d306 100644
--- a/os/hal/include/sdc.h
+++ b/os/hal/include/sdc.h
@@ -203,6 +203,7 @@ extern "C" {
sdcflags_t sdcGetAndClearErrors(SDCDriver *sdcp);
bool_t sdcSync(SDCDriver *sdcp);
bool_t sdcGetInfo(SDCDriver *sdcp, BlockDeviceInfo *bdip);
+ bool_t sdcErase(SDCDriver *mmcp, uint32_t startblk, uint32_t endblk);
bool_t _sdc_wait_for_transfer_state(SDCDriver *sdcp);
#ifdef __cplusplus
}