From 215b400038806b9e9682898390478c0bd61e2b48 Mon Sep 17 00:00:00 2001 From: Victor Date: Mon, 8 Jun 2020 01:35:52 -0300 Subject: [PATCH] Allow SDIO clock/retry overrides (#18223) Co-authored-by: Scott Lahteine --- Marlin/src/HAL/STM32F1/sdio.cpp | 2 +- Marlin/src/HAL/STM32F1/sdio.h | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/Marlin/src/HAL/STM32F1/sdio.cpp b/Marlin/src/HAL/STM32F1/sdio.cpp index af53635ac4..5b5f8bae7a 100644 --- a/Marlin/src/HAL/STM32F1/sdio.cpp +++ b/Marlin/src/HAL/STM32F1/sdio.cpp @@ -120,7 +120,7 @@ bool SDIO_ReadBlock_DMA(uint32_t blockAddress, uint8_t *data) { } bool SDIO_ReadBlock(uint32_t blockAddress, uint8_t *data) { - uint32_t retries = 3; + uint32_t retries = SDIO_READ_RETRIES; while (retries--) if (SDIO_ReadBlock_DMA(blockAddress, data)) return true; return false; } diff --git a/Marlin/src/HAL/STM32F1/sdio.h b/Marlin/src/HAL/STM32F1/sdio.h index f51ba6d0a6..81b0cfd5fd 100644 --- a/Marlin/src/HAL/STM32F1/sdio.h +++ b/Marlin/src/HAL/STM32F1/sdio.h @@ -21,7 +21,7 @@ */ #pragma once -#include "../shared/Marduino.h" +#include "../../inc/MarlinConfig.h" // Allow pins/pins.h to override SDIO clock / retries #include #include @@ -100,7 +100,13 @@ #define SDIO_DATA_TIMEOUT 100U /* Read data transfer timeout */ #define SDIO_WRITE_TIMEOUT 200U /* Write data transfer timeout */ -#define SDIO_CLOCK 18000000 /* 18 MHz */ +#ifndef SDIO_CLOCK + #define SDIO_CLOCK 18000000 /* 18 MHz */ +#endif + +#ifndef SDIO_READ_RETRIES + #define SDIO_READ_RETRIES 3 +#endif // ------------------------ // Types