From 86f06d6a874d4eb3d6c50deec0240942344c01ea Mon Sep 17 00:00:00 2001 From: Damien George Date: Thu, 31 Jan 2019 12:49:48 +1100 Subject: [PATCH] stm32/sdcard: Don't use SD clock bypass on F7 MCUs. With clock bypass enabled the attached SD card is clocked at the maximum 48MHz. But some SD cards are unreliable at these rates. Although it's nice to have high speed transfers it's more important that the transfers are reliable for all cards. So disable this clock bypass option. --- ports/stm32/sdcard.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/ports/stm32/sdcard.c b/ports/stm32/sdcard.c index 1d49016e7d..94bfc5cd86 100644 --- a/ports/stm32/sdcard.c +++ b/ports/stm32/sdcard.c @@ -222,10 +222,6 @@ bool sdcard_power_on(void) { } // configure the SD bus width for wide operation - #if defined(STM32F7) - // use maximum SDMMC clock speed on F7 MCUs - sd_handle.Init.ClockBypass = SDMMC_CLOCK_BYPASS_ENABLE; - #endif if (HAL_SD_ConfigWideBusOperation(&sd_handle, SDIO_BUS_WIDE_4B) != HAL_OK) { HAL_SD_DeInit(&sd_handle); goto error;