]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - tmk_core/common/eeconfig.c
STM32 EEPROM Emulation (#3741)
[qmk_firmware.git] / tmk_core / common / eeconfig.c
index 91c18e2e6e61ef659b7ddf35d27afb40f73b6ee2..35de574a9647960762bad258cfe3e0673b10091c 100644 (file)
@@ -3,12 +3,20 @@
 #include "eeprom.h"
 #include "eeconfig.h"
 
+#ifdef STM32F303xC
+#include "hal.h"
+#include "eeprom_stm32.h"
+#endif
+
 /** \brief eeconfig initialization
  *
  * FIXME: needs doc
  */
 void eeconfig_init(void)
 {
+#ifdef STM32F303xC
+    EEPROM_format();
+#endif
     eeprom_update_word(EECONFIG_MAGIC,          EECONFIG_MAGIC_NUMBER);
     eeprom_update_byte(EECONFIG_DEBUG,          0);
     eeprom_update_byte(EECONFIG_DEFAULT_LAYER,  0);
@@ -20,7 +28,7 @@ void eeconfig_init(void)
 #ifdef AUDIO_ENABLE
     eeprom_update_byte(EECONFIG_AUDIO,             0xFF); // On by default
 #endif
-#ifdef RGBLIGHT_ENABLE
+#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE)
     eeprom_update_dword(EECONFIG_RGBLIGHT,      0);
 #endif
 #ifdef STENO_ENABLE
@@ -43,6 +51,9 @@ void eeconfig_enable(void)
  */
 void eeconfig_disable(void)
 {
+#ifdef STM32F303xC
+    EEPROM_format();
+#endif
     eeprom_update_word(EECONFIG_MAGIC, 0xFFFF);
 }