diff --git a/Marlin/src/HAL/STM32F1/inc/Conditionals_LCD.h b/Marlin/src/HAL/STM32F1/inc/Conditionals_LCD.h
index 0285c52ee365e927ee9bc94b2a6c7e570aa29ae0..4e3b8903ddc63f10a366bf11bef20d13a5ae650e 100644
--- a/Marlin/src/HAL/STM32F1/inc/Conditionals_LCD.h
+++ b/Marlin/src/HAL/STM32F1/inc/Conditionals_LCD.h
@@ -20,3 +20,8 @@
  *
  */
 #pragma once
+
+#if ENABLED(USE_USB_COMPOSITE)
+  //#warning "SD_CHECK_AND_RETRY isn't needed with USE_USB_COMPOSITE."
+  #undef SD_CHECK_AND_RETRY
+#endif
diff --git a/Marlin/src/sd/Sd2Card.cpp b/Marlin/src/sd/Sd2Card.cpp
index ba233d36f6256bc74fef9ba490b762c7d2fb4b71..e21662afc1357bfbf13f9912b70226f3071b136e 100644
--- a/Marlin/src/sd/Sd2Card.cpp
+++ b/Marlin/src/sd/Sd2Card.cpp
@@ -575,7 +575,7 @@ bool Sd2Card::writeData(const uint8_t* src) {
 // Send one block of data for write block or write multiple blocks
 bool Sd2Card::writeData(const uint8_t token, const uint8_t* src) {
 
-  uint16_t crc =
+  const uint16_t crc =
     #if ENABLED(SD_CHECK_AND_RETRY)
       CRC_CCITT(src, 512)
     #else