summaryrefslogtreecommitdiffstatshomepage
path: root/stmhal/sdcard.c
diff options
context:
space:
mode:
Diffstat (limited to 'stmhal/sdcard.c')
-rw-r--r--stmhal/sdcard.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/stmhal/sdcard.c b/stmhal/sdcard.c
index 5620aef5b4..ae03c9f3fa 100644
--- a/stmhal/sdcard.c
+++ b/stmhal/sdcard.c
@@ -9,14 +9,12 @@
#include "map.h"
#include "runtime.h"
#include "sdcard.h"
+#include "pin.h"
+#include "build/pins.h"
-static SD_HandleTypeDef sd_handle;
+#if MICROPY_HW_HAS_SDCARD
-#define SDCARD_DETECT_GPIO_PORT (GPIOA)
-#define SDCARD_DETECT_GPIO_PIN (GPIO_PIN_8)
-#define SDCARD_DETECT_GPIO_PULL (GPIO_PULLUP)
-#define SDCARD_DETECT_GPIO_PRESENT (GPIO_PIN_RESET)
-#define __SDCARD_DETECT_GPIO_CLK_ENABLE() __GPIOA_CLK_ENABLE()
+static SD_HandleTypeDef sd_handle;
void sdcard_init(void) {
GPIO_InitTypeDef GPIO_Init_Structure;
@@ -39,10 +37,10 @@ void sdcard_init(void) {
// configure the SD card detect pin
// we do this here so we can detect if the SD card is inserted before powering it on
GPIO_Init_Structure.Mode = GPIO_MODE_INPUT;
- GPIO_Init_Structure.Pull = SDCARD_DETECT_GPIO_PULL;
+ GPIO_Init_Structure.Pull = MICROPY_HW_SDCARD_DETECT_PULL;
GPIO_Init_Structure.Speed = GPIO_SPEED_HIGH;
- GPIO_Init_Structure.Pin = SDCARD_DETECT_GPIO_PIN;
- HAL_GPIO_Init(SDCARD_DETECT_GPIO_PORT, &GPIO_Init_Structure);
+ GPIO_Init_Structure.Pin = MICROPY_HW_SDCARD_DETECT_PIN.pin_mask;
+ HAL_GPIO_Init(MICROPY_HW_SDCARD_DETECT_PIN.gpio, &GPIO_Init_Structure);
}
void HAL_SD_MspInit(SD_HandleTypeDef *hsd) {
@@ -60,7 +58,7 @@ void HAL_SD_MspDeInit(SD_HandleTypeDef *hsd) {
}
bool sdcard_is_present(void) {
- return HAL_GPIO_ReadPin(SDCARD_DETECT_GPIO_PORT, SDCARD_DETECT_GPIO_PIN) == SDCARD_DETECT_GPIO_PRESENT;
+ return HAL_GPIO_ReadPin(MICROPY_HW_SDCARD_DETECT_PIN.gpio, MICROPY_HW_SDCARD_DETECT_PIN.pin_mask) == MICROPY_HW_SDCARD_DETECT_PRESENT;
}
bool sdcard_power_on(void) {
@@ -248,3 +246,5 @@ static const mp_obj_type_t sdcard_type = {
};
const mp_obj_base_t pyb_sdcard_obj = {&sdcard_type};
+
+#endif // MICROPY_HW_HAS_SDCARD