aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/include/hal_mmcsd.h
diff options
context:
space:
mode:
Diffstat (limited to 'os/hal/include/hal_mmcsd.h')
-rw-r--r--os/hal/include/hal_mmcsd.h264
1 files changed, 132 insertions, 132 deletions
diff --git a/os/hal/include/hal_mmcsd.h b/os/hal/include/hal_mmcsd.h
index c3589301a..de3b1ab13 100644
--- a/os/hal/include/hal_mmcsd.h
+++ b/os/hal/include/hal_mmcsd.h
@@ -30,7 +30,7 @@
#ifndef _HAL_MMCSD_H_
#define _HAL_MMCSD_H_
-#if HAL_USE_MMC_SPI || HAL_USE_SDC || defined(__DOXYGEN__)
+#if (HAL_USE_MMC_SPI == TRUE) || (HAL_USE_SDC == TRUE) || defined(__DOXYGEN__)
/*===========================================================================*/
/* Driver constants. */
@@ -39,63 +39,63 @@
/**
* @brief Fixed block size for MMC/SD block devices.
*/
-#define MMCSD_BLOCK_SIZE 512
+#define MMCSD_BLOCK_SIZE 512U
/**
* @brief Mask of error bits in R1 responses.
*/
-#define MMCSD_R1_ERROR_MASK 0xFDFFE008
+#define MMCSD_R1_ERROR_MASK 0xFDFFE008U
/**
* @brief Fixed pattern for CMD8.
*/
-#define MMCSD_CMD8_PATTERN 0x000001AA
+#define MMCSD_CMD8_PATTERN 0x000001AAU
/**
* @name SD/MMC status conditions
* @{
*/
-#define MMCSD_STS_IDLE 0
-#define MMCSD_STS_READY 1
-#define MMCSD_STS_IDENT 2
-#define MMCSD_STS_STBY 3
-#define MMCSD_STS_TRAN 4
-#define MMCSD_STS_DATA 5
-#define MMCSD_STS_RCV 6
-#define MMCSD_STS_PRG 7
-#define MMCSD_STS_DIS 8
+#define MMCSD_STS_IDLE 0U
+#define MMCSD_STS_READY 1U
+#define MMCSD_STS_IDENT 2U
+#define MMCSD_STS_STBY 3U
+#define MMCSD_STS_TRAN 4U
+#define MMCSD_STS_DATA 5U
+#define MMCSD_STS_RCV 6U
+#define MMCSD_STS_PRG 7U
+#define MMCSD_STS_DIS 8U
/** @} */
/**
* @name SD/MMC commands
* @{
*/
-#define MMCSD_CMD_GO_IDLE_STATE 0
-#define MMCSD_CMD_INIT 1
-#define MMCSD_CMD_ALL_SEND_CID 2
-#define MMCSD_CMD_SEND_RELATIVE_ADDR 3
-#define MMCSD_CMD_SET_BUS_WIDTH 6
+#define MMCSD_CMD_GO_IDLE_STATE 0U
+#define MMCSD_CMD_INIT 1U
+#define MMCSD_CMD_ALL_SEND_CID 2U
+#define MMCSD_CMD_SEND_RELATIVE_ADDR 3U
+#define MMCSD_CMD_SET_BUS_WIDTH 6U
#define MMCSD_CMD_SWITCH MMCSD_CMD_SET_BUS_WIDTH
-#define MMCSD_CMD_SEL_DESEL_CARD 7
-#define MMCSD_CMD_SEND_IF_COND 8
+#define MMCSD_CMD_SEL_DESEL_CARD 7U
+#define MMCSD_CMD_SEND_IF_COND 8U
#define MMCSD_CMD_SEND_EXT_CSD MMCSD_CMD_SEND_IF_COND
-#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
-#define MMCSD_CMD_READ_SINGLE_BLOCK 17
-#define MMCSD_CMD_READ_MULTIPLE_BLOCK 18
-#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
-#define MMCSD_CMD_READ_OCR 58
+#define MMCSD_CMD_SEND_CSD 9U
+#define MMCSD_CMD_SEND_CID 10U
+#define MMCSD_CMD_STOP_TRANSMISSION 12U
+#define MMCSD_CMD_SEND_STATUS 13U
+#define MMCSD_CMD_SET_BLOCKLEN 16U
+#define MMCSD_CMD_READ_SINGLE_BLOCK 17U
+#define MMCSD_CMD_READ_MULTIPLE_BLOCK 18U
+#define MMCSD_CMD_SET_BLOCK_COUNT 23U
+#define MMCSD_CMD_WRITE_BLOCK 24U
+#define MMCSD_CMD_WRITE_MULTIPLE_BLOCK 25U
+#define MMCSD_CMD_ERASE_RW_BLK_START 32U
+#define MMCSD_CMD_ERASE_RW_BLK_END 33U
+#define MMCSD_CMD_ERASE 38U
+#define MMCSD_CMD_APP_OP_COND 41U
+#define MMCSD_CMD_LOCK_UNLOCK 42U
+#define MMCSD_CMD_APP_CMD 55U
+#define MMCSD_CMD_READ_OCR 58U
/** @} */
/**
@@ -105,65 +105,65 @@
* @brief Slice position of values in CSD register.
*/
/* CSD for MMC */
-#define MMCSD_CSD_MMC_CSD_STRUCTURE_SLICE 127,126
-#define MMCSD_CSD_MMC_SPEC_VERS_SLICE 125,122
-#define MMCSD_CSD_MMC_TAAC_SLICE 119,112
-#define MMCSD_CSD_MMC_NSAC_SLICE 111,104
-#define MMCSD_CSD_MMC_TRAN_SPEED_SLICE 103,96
-#define MMCSD_CSD_MMC_CCC_SLICE 95,84
-#define MMCSD_CSD_MMC_READ_BL_LEN_SLICE 83,80
-#define MMCSD_CSD_MMC_READ_BL_PARTIAL_SLICE 79,79
-#define MMCSD_CSD_MMC_WRITE_BLK_MISALIGN_SLICE 78,78
-#define MMCSD_CSD_MMC_READ_BLK_MISALIGN_SLICE 77,77
-#define MMCSD_CSD_MMC_DSR_IMP_SLICE 76,76
-#define MMCSD_CSD_MMC_C_SIZE_SLICE 73,62
-#define MMCSD_CSD_MMC_VDD_R_CURR_MIN_SLICE 61,59
-#define MMCSD_CSD_MMC_VDD_R_CURR_MAX_SLICE 58,56
-#define MMCSD_CSD_MMC_VDD_W_CURR_MIN_SLICE 55,53
-#define MMCSD_CSD_MMC_VDD_W_CURR_MAX_SLICE 52,50
-#define MMCSD_CSD_MMC_C_SIZE_MULT_SLICE 49,47
-#define MMCSD_CSD_MMC_ERASE_GRP_SIZE_SLICE 46,42
-#define MMCSD_CSD_MMC_ERASE_GRP_MULT_SLICE 41,37
-#define MMCSD_CSD_MMC_WP_GRP_SIZE_SLICE 36,32
-#define MMCSD_CSD_MMC_WP_GRP_ENABLE_SLICE 31,31
-#define MMCSD_CSD_MMC_DEFAULT_ECC_SLICE 30,29
-#define MMCSD_CSD_MMC_R2W_FACTOR_SLICE 28,26
-#define MMCSD_CSD_MMC_WRITE_BL_LEN_SLICE 25,22
-#define MMCSD_CSD_MMC_WRITE_BL_PARTIAL_SLICE 21,21
-#define MMCSD_CSD_MMC_CONTENT_PROT_APP_SLICE 16,16
-#define MMCSD_CSD_MMC_FILE_FORMAT_GRP_SLICE 15,15
-#define MMCSD_CSD_MMC_COPY_SLICE 14,14
-#define MMCSD_CSD_MMC_PERM_WRITE_PROTECT_SLICE 13,13
-#define MMCSD_CSD_MMC_TMP_WRITE_PROTECT_SLICE 12,12
-#define MMCSD_CSD_MMC_FILE_FORMAT_SLICE 11,10
-#define MMCSD_CSD_MMC_ECC_SLICE 9,8
-#define MMCSD_CSD_MMC_CRC_SLICE 7,1
+#define MMCSD_CSD_MMC_CSD_STRUCTURE_SLICE 127U,126U
+#define MMCSD_CSD_MMC_SPEC_VERS_SLICE 125U,122U
+#define MMCSD_CSD_MMC_TAAC_SLICE 119U,112U
+#define MMCSD_CSD_MMC_NSAC_SLICE 111U,104U
+#define MMCSD_CSD_MMC_TRAN_SPEED_SLICE 103U,96U
+#define MMCSD_CSD_MMC_CCC_SLICE 95U,84U
+#define MMCSD_CSD_MMC_READ_BL_LEN_SLICE 83U,80U
+#define MMCSD_CSD_MMC_READ_BL_PARTIAL_SLICE 79U,79U
+#define MMCSD_CSD_MMC_WRITE_BLK_MISALIGN_SLICE 78U,78U
+#define MMCSD_CSD_MMC_READ_BLK_MISALIGN_SLICE 77U,77U
+#define MMCSD_CSD_MMC_DSR_IMP_SLICE 76U,76U
+#define MMCSD_CSD_MMC_C_SIZE_SLICE 73U,62U
+#define MMCSD_CSD_MMC_VDD_R_CURR_MIN_SLICE 61U,59U
+#define MMCSD_CSD_MMC_VDD_R_CURR_MAX_SLICE 58U,56U
+#define MMCSD_CSD_MMC_VDD_W_CURR_MIN_SLICE 55U,53U
+#define MMCSD_CSD_MMC_VDD_W_CURR_MAX_SLICE 52U,50U
+#define MMCSD_CSD_MMC_C_SIZE_MULT_SLICE 49U,47U
+#define MMCSD_CSD_MMC_ERASE_GRP_SIZE_SLICE 46U,42U
+#define MMCSD_CSD_MMC_ERASE_GRP_MULT_SLICE 41U,37U
+#define MMCSD_CSD_MMC_WP_GRP_SIZE_SLICE 36U,32U
+#define MMCSD_CSD_MMC_WP_GRP_ENABLE_SLICE 31U,31U
+#define MMCSD_CSD_MMC_DEFAULT_ECC_SLICE 30U,29U
+#define MMCSD_CSD_MMC_R2W_FACTOR_SLICE 28U,26U
+#define MMCSD_CSD_MMC_WRITE_BL_LEN_SLICE 25U,22U
+#define MMCSD_CSD_MMC_WRITE_BL_PARTIAL_SLICE 21U,21U
+#define MMCSD_CSD_MMC_CONTENT_PROT_APP_SLICE 16U,16U
+#define MMCSD_CSD_MMC_FILE_FORMAT_GRP_SLICE 15U,15U
+#define MMCSD_CSD_MMC_COPY_SLICE 14U,14U
+#define MMCSD_CSD_MMC_PERM_WRITE_PROTECT_SLICE 13U,13U
+#define MMCSD_CSD_MMC_TMP_WRITE_PROTECT_SLICE 12U,12U
+#define MMCSD_CSD_MMC_FILE_FORMAT_SLICE 11U,10U
+#define MMCSD_CSD_MMC_ECC_SLICE 9U,8U
+#define MMCSD_CSD_MMC_CRC_SLICE 7U,1U
/* CSD version 2.0 */
-#define MMCSD_CSD_20_CRC_SLICE 7,1
-#define MMCSD_CSD_20_FILE_FORMAT_SLICE 11,10
-#define MMCSD_CSD_20_TMP_WRITE_PROTECT_SLICE 12,12
-#define MMCSD_CSD_20_PERM_WRITE_PROTECT_SLICE 13,13
-#define MMCSD_CSD_20_COPY_SLICE 14,14
-#define MMCSD_CSD_20_FILE_FORMAT_GRP_SLICE 15,15
-#define MMCSD_CSD_20_WRITE_BL_PARTIAL_SLICE 21,21
-#define MMCSD_CSD_20_WRITE_BL_LEN_SLICE 25,12
-#define MMCSD_CSD_20_R2W_FACTOR_SLICE 28,26
-#define MMCSD_CSD_20_WP_GRP_ENABLE_SLICE 31,31
-#define MMCSD_CSD_20_WP_GRP_SIZE_SLICE 38,32
-#define MMCSD_CSD_20_ERASE_SECTOR_SIZE_SLICE 45,39
-#define MMCSD_CSD_20_ERASE_BLK_EN_SLICE 46,46
-#define MMCSD_CSD_20_C_SIZE_SLICE 69,48
-#define MMCSD_CSD_20_DSR_IMP_SLICE 76,76
-#define MMCSD_CSD_20_READ_BLK_MISALIGN_SLICE 77,77
-#define MMCSD_CSD_20_WRITE_BLK_MISALIGN_SLICE 78,78
-#define MMCSD_CSD_20_READ_BL_PARTIAL_SLICE 79,79
-#define MMCSD_CSD_20_READ_BL_LEN_SLICE 83,80
-#define MMCSD_CSD_20_CCC_SLICE 95,84
-#define MMCSD_CSD_20_TRANS_SPEED_SLICE 103,96
-#define MMCSD_CSD_20_NSAC_SLICE 111,104
-#define MMCSD_CSD_20_TAAC_SLICE 119,112
-#define MMCSD_CSD_20_CSD_STRUCTURE_SLICE 127,126
+#define MMCSD_CSD_20_CRC_SLICE 7U,1U
+#define MMCSD_CSD_20_FILE_FORMAT_SLICE 11U,10U
+#define MMCSD_CSD_20_TMP_WRITE_PROTECT_SLICE 12U,12U
+#define MMCSD_CSD_20_PERM_WRITE_PROTECT_SLICE 13U,13U
+#define MMCSD_CSD_20_COPY_SLICE 14U,14U
+#define MMCSD_CSD_20_FILE_FORMAT_GRP_SLICE 15U,15U
+#define MMCSD_CSD_20_WRITE_BL_PARTIAL_SLICE 21U,21U
+#define MMCSD_CSD_20_WRITE_BL_LEN_SLICE 25U,12U
+#define MMCSD_CSD_20_R2W_FACTOR_SLICE 28U,26U
+#define MMCSD_CSD_20_WP_GRP_ENABLE_SLICE 31U,31U
+#define MMCSD_CSD_20_WP_GRP_SIZE_SLICE 38U,32U
+#define MMCSD_CSD_20_ERASE_SECTOR_SIZE_SLICE 45U,39U
+#define MMCSD_CSD_20_ERASE_BLK_EN_SLICE 46U,46U
+#define MMCSD_CSD_20_C_SIZE_SLICE 69U,48U
+#define MMCSD_CSD_20_DSR_IMP_SLICE 76U,76U
+#define MMCSD_CSD_20_READ_BLK_MISALIGN_SLICE 77U,77U
+#define MMCSD_CSD_20_WRITE_BLK_MISALIGN_SLICE 78U,78U
+#define MMCSD_CSD_20_READ_BL_PARTIAL_SLICE 79U,79U
+#define MMCSD_CSD_20_READ_BL_LEN_SLICE 83U,80U
+#define MMCSD_CSD_20_CCC_SLICE 95U,84U
+#define MMCSD_CSD_20_TRANS_SPEED_SLICE 103U,96U
+#define MMCSD_CSD_20_NSAC_SLICE 111U,104U
+#define MMCSD_CSD_20_TAAC_SLICE 119U,112U
+#define MMCSD_CSD_20_CSD_STRUCTURE_SLICE 127U,126U
/* CSD version 1.0 */
#define MMCSD_CSD_10_CRC_SLICE MMCSD_CSD_20_CRC_SLICE
@@ -179,17 +179,17 @@
#define MMCSD_CSD_10_WP_GRP_SIZE_SLICE MMCSD_CSD_20_WP_GRP_SIZE_SLICE
#define MMCSD_CSD_10_ERASE_SECTOR_SIZE_SLICE MMCSD_CSD_20_ERASE_SECTOR_SIZE_SLICE
#define MMCSD_CSD_10_ERASE_BLK_EN_SLICE MMCSD_CSD_20_ERASE_BLK_EN_SLICE
-#define MMCSD_CSD_10_C_SIZE_MULT_SLICE 49,47
-#define MMCSD_CSD_10_VDD_W_CURR_MAX_SLICE 52,50
-#define MMCSD_CSD_10_VDD_W_CURR_MIN_SLICE 55,53
-#define MMCSD_CSD_10_VDD_R_CURR_MAX_SLICE 58,56
-#define MMCSD_CSD_10_VDD_R_CURR_MIX_SLICE 61,59
-#define MMCSD_CSD_10_C_SIZE_SLICE 73,62
+#define MMCSD_CSD_10_C_SIZE_MULT_SLICE 49U,47U
+#define MMCSD_CSD_10_VDD_W_CURR_MAX_SLICE 52U,50U
+#define MMCSD_CSD_10_VDD_W_CURR_MIN_SLICE 55U,53U
+#define MMCSD_CSD_10_VDD_R_CURR_MAX_SLICE 58U,56U
+#define MMCSD_CSD_10_VDD_R_CURR_MIX_SLICE 61U,59U
+#define MMCSD_CSD_10_C_SIZE_SLICE 73U,62U
#define MMCSD_CSD_10_DSR_IMP_SLICE MMCSD_CSD_20_DSR_IMP_SLICE
#define MMCSD_CSD_10_READ_BLK_MISALIGN_SLICE MMCSD_CSD_20_READ_BLK_MISALIGN_SLICE
#define MMCSD_CSD_10_WRITE_BLK_MISALIGN_SLICE MMCSD_CSD_20_WRITE_BLK_MISALIGN_SLICE
#define MMCSD_CSD_10_READ_BL_PARTIAL_SLICE MMCSD_CSD_20_READ_BL_PARTIAL_SLICE
-#define MMCSD_CSD_10_READ_BL_LEN_SLICE 83, 80
+#define MMCSD_CSD_10_READ_BL_LEN_SLICE 83U,80U
#define MMCSD_CSD_10_CCC_SLICE MMCSD_CSD_20_CCC_SLICE
#define MMCSD_CSD_10_TRANS_SPEED_SLICE MMCSD_CSD_20_TRANS_SPEED_SLICE
#define MMCSD_CSD_10_NSAC_SLICE MMCSD_CSD_20_NSAC_SLICE
@@ -204,35 +204,35 @@
* @brief Slice position of values in CID register.
*/
/* CID for SDC */
-#define MMCSD_CID_SDC_CRC_SLICE 7,1
-#define MMCSD_CID_SDC_MDT_M_SLICE 11,8
-#define MMCSD_CID_SDC_MDT_Y_SLICE 19,12
-#define MMCSD_CID_SDC_PSN_SLICE 55,24
-#define MMCSD_CID_SDC_PRV_M_SLICE 59,56
-#define MMCSD_CID_SDC_PRV_N_SLICE 63,60
-#define MMCSD_CID_SDC_PNM0_SLICE 71,64
-#define MMCSD_CID_SDC_PNM1_SLICE 79,72
-#define MMCSD_CID_SDC_PNM2_SLICE 87,80
-#define MMCSD_CID_SDC_PNM3_SLICE 95,88
-#define MMCSD_CID_SDC_PNM4_SLICE 103,96
-#define MMCSD_CID_SDC_OID_SLICE 119,104
-#define MMCSD_CID_SDC_MID_SLICE 127,120
+#define MMCSD_CID_SDC_CRC_SLICE 7U,1U
+#define MMCSD_CID_SDC_MDT_M_SLICE 11U,8U
+#define MMCSD_CID_SDC_MDT_Y_SLICE 19U,12U
+#define MMCSD_CID_SDC_PSN_SLICE 55U,24U
+#define MMCSD_CID_SDC_PRV_M_SLICE 59U,56U
+#define MMCSD_CID_SDC_PRV_N_SLICE 63U,60U
+#define MMCSD_CID_SDC_PNM0_SLICE 71U,64U
+#define MMCSD_CID_SDC_PNM1_SLICE 79U,72U
+#define MMCSD_CID_SDC_PNM2_SLICE 87U,80U
+#define MMCSD_CID_SDC_PNM3_SLICE 95U,88U
+#define MMCSD_CID_SDC_PNM4_SLICE 103U,96U
+#define MMCSD_CID_SDC_OID_SLICE 119U,104U
+#define MMCSD_CID_SDC_MID_SLICE 127U,120U
/* CID for MMC */
-#define MMCSD_CID_MMC_CRC_SLICE 7,1
-#define MMCSD_CID_MMC_MDT_Y_SLICE 11,8
-#define MMCSD_CID_MMC_MDT_M_SLICE 15,12
-#define MMCSD_CID_MMC_PSN_SLICE 47,16
-#define MMCSD_CID_MMC_PRV_M_SLICE 51,48
-#define MMCSD_CID_MMC_PRV_N_SLICE 55,52
-#define MMCSD_CID_MMC_PNM0_SLICE 63,56
-#define MMCSD_CID_MMC_PNM1_SLICE 71,64
-#define MMCSD_CID_MMC_PNM2_SLICE 79,72
-#define MMCSD_CID_MMC_PNM3_SLICE 87,80
-#define MMCSD_CID_MMC_PNM4_SLICE 95,88
-#define MMCSD_CID_MMC_PNM5_SLICE 103,96
-#define MMCSD_CID_MMC_OID_SLICE 119,104
-#define MMCSD_CID_MMC_MID_SLICE 127,120
+#define MMCSD_CID_MMC_CRC_SLICE 7U,1U
+#define MMCSD_CID_MMC_MDT_Y_SLICE 11U,8U
+#define MMCSD_CID_MMC_MDT_M_SLICE 15U,12U
+#define MMCSD_CID_MMC_PSN_SLICE 47U,16U
+#define MMCSD_CID_MMC_PRV_M_SLICE 51U,48U
+#define MMCSD_CID_MMC_PRV_N_SLICE 55U,52U
+#define MMCSD_CID_MMC_PNM0_SLICE 63U,56U
+#define MMCSD_CID_MMC_PNM1_SLICE 71U,64U
+#define MMCSD_CID_MMC_PNM2_SLICE 79U,72U
+#define MMCSD_CID_MMC_PNM3_SLICE 87U,80U
+#define MMCSD_CID_MMC_PNM4_SLICE 95U,88U
+#define MMCSD_CID_MMC_PNM5_SLICE 103U,96U
+#define MMCSD_CID_MMC_OID_SLICE 119U,104U
+#define MMCSD_CID_MMC_MID_SLICE 127U,120U
/** @} */
/*===========================================================================*/
@@ -435,21 +435,21 @@ typedef struct {
*
* @param[in] r1 the r1 response
*/
-#define MMCSD_R1_ERROR(r1) (((r1) & MMCSD_R1_ERROR_MASK) != 0)
+#define MMCSD_R1_ERROR(r1) (((r1) & MMCSD_R1_ERROR_MASK) != 0U)
/**
* @brief Returns the status field of an R1 response.
*
* @param[in] r1 the r1 response
*/
-#define MMCSD_R1_STS(r1) (((r1) >> 9) & 15)
+#define MMCSD_R1_STS(r1) (((r1) >> 9U) & 15U)
/**
* @brief Evaluates to @p TRUE if the R1 response indicates a locked card.
*
* @param[in] r1 the r1 response
*/
-#define MMCSD_R1_IS_CARD_LOCKED(r1) (((r1) >> 21) & 1)
+#define MMCSD_R1_IS_CARD_LOCKED(r1) ((((r1) >> 21U) & 1U) != 0U)
/** @} */
/**
@@ -494,7 +494,7 @@ extern "C" {
}
#endif
-#endif /* HAL_USE_MMC_SPI || HAL_USE_MMC_SDC*/
+#endif /* HAL_USE_MMC_SPI == TRUE || HAL_USE_MMC_SDC == TRUE */
#endif /* _HAL_MMCSD_H_ */