From 9c4cd6d0b3fbc7c60eca978f2c044ed81ca6627b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niccol=C3=B2=20Betto?= <niccolo.betto@skywarder.eu>
Date: Fri, 13 Sep 2024 23:41:33 +0200
Subject: [PATCH] [BSP][Lyra] Set SD clock to 6 Mhz and disable 4bit wire mode

---
 src/bsps/stm32f767zi_lyra_biscotto/config/board_settings.h | 7 +++++--
 src/bsps/stm32f767zi_lyra_motor/config/board_settings.h    | 7 +++++--
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/bsps/stm32f767zi_lyra_biscotto/config/board_settings.h b/src/bsps/stm32f767zi_lyra_biscotto/config/board_settings.h
index 2332aa30e..5a18f96a5 100644
--- a/src/bsps/stm32f767zi_lyra_biscotto/config/board_settings.h
+++ b/src/bsps/stm32f767zi_lyra_biscotto/config/board_settings.h
@@ -49,8 +49,11 @@ const unsigned int defaultSerialSpeed = 115200;
 
 // SD card driver
 static const unsigned char sdVoltage = 33;  // Board powered @ 3.3V
-// #define SD_ONE_BIT_DATABUS
-#define SD_SDMMC 1  // Select either SDMMC1 or SDMMC2
+#define SD_SDMMC 1                          // Select either SDMMC1 or SDMMC2
+
+// Disable 4bit wire mode and set speed to 6Mhz (48Mhz / (6 + 2))
+#define SD_ONE_BIT_DATABUS
+#define OVERRIDE_SD_CLOCK_DIVIDER_MAX 6
 
 /// Analog supply voltage for ADC, DAC, Reset blocks, RCs and PLL
 #define V_DDA_VOLTAGE 3.3f
diff --git a/src/bsps/stm32f767zi_lyra_motor/config/board_settings.h b/src/bsps/stm32f767zi_lyra_motor/config/board_settings.h
index 2332aa30e..5a18f96a5 100644
--- a/src/bsps/stm32f767zi_lyra_motor/config/board_settings.h
+++ b/src/bsps/stm32f767zi_lyra_motor/config/board_settings.h
@@ -49,8 +49,11 @@ const unsigned int defaultSerialSpeed = 115200;
 
 // SD card driver
 static const unsigned char sdVoltage = 33;  // Board powered @ 3.3V
-// #define SD_ONE_BIT_DATABUS
-#define SD_SDMMC 1  // Select either SDMMC1 or SDMMC2
+#define SD_SDMMC 1                          // Select either SDMMC1 or SDMMC2
+
+// Disable 4bit wire mode and set speed to 6Mhz (48Mhz / (6 + 2))
+#define SD_ONE_BIT_DATABUS
+#define OVERRIDE_SD_CLOCK_DIVIDER_MAX 6
 
 /// Analog supply voltage for ADC, DAC, Reset blocks, RCs and PLL
 #define V_DDA_VOLTAGE 3.3f
-- 
GitLab