diff options
-rw-r--r-- | os/hal/include/sdc.h | 26 | ||||
-rw-r--r-- | os/hal/platforms/STM32/sdc_lld.h | 1 | ||||
-rw-r--r-- | readme.txt | 1 |
3 files changed, 28 insertions, 0 deletions
diff --git a/os/hal/include/sdc.h b/os/hal/include/sdc.h index 2c35b8a0e..3f0634fc5 100644 --- a/os/hal/include/sdc.h +++ b/os/hal/include/sdc.h @@ -163,6 +163,32 @@ typedef enum { */
#define SDC_R1_IS_CARD_LOCKED(r1) (((r1) >> 21) & 1)
+/**
+ * @brief Returns the driver state.
+ *
+ * @param[in] sdcp pointer to the @p SDCDriver object
+ * @return The driver state.
+ *
+ * @api
+ */
+#define sdcGetDriverState(sdcp) ((sdcp)->state)
+
+/**
+ * @brief Returns the write protect status.
+ * @note This macro wraps a low level function named
+ * @p sdc_lld_is_write_protected(), this function must be
+ * provided by the application because it is not part of the
+ * SDC driver.
+ *
+ * @param[in] sdcp pointer to the @p SDCDriver object
+ * @return The card state.
+ * @retval FALSE card not inserted.
+ * @retval TRUE card inserted.
+ *
+ * @api
+ */
+#define sdcIsWriteProtected(sdcp) (sdc_lld_is_write_protected(sdcp))
+
/*===========================================================================*/
/* External declarations. */
/*===========================================================================*/
diff --git a/os/hal/platforms/STM32/sdc_lld.h b/os/hal/platforms/STM32/sdc_lld.h index c0d1b8bdd..a856fbf2b 100644 --- a/os/hal/platforms/STM32/sdc_lld.h +++ b/os/hal/platforms/STM32/sdc_lld.h @@ -190,6 +190,7 @@ extern "C" { uint8_t *buf, uint32_t n);
bool_t sdc_lld_write(SDCDriver *sdcp, uint32_t startblk,
const uint8_t *buf, uint32_t n);
+ bool_t sdc_lld_is_write_protected(SDCDriver *sdcp);
#ifdef __cplusplus
}
#endif
diff --git a/readme.txt b/readme.txt index cfa33c642..851f2e0b0 100644 --- a/readme.txt +++ b/readme.txt @@ -72,6 +72,7 @@ *** 2.3.4 ***
- NEW: Now the STM32 SDC driver supports unaligned buffers transparently.
+ Optimized the driver for single block read and write operations.
*** 2.3.3 ***
- FIX: Fixed race condition in output queues (bug 3303908)(backported
|