summaryrefslogtreecommitdiffstats
path: root/tmk_core/common/eeconfig.h
diff options
context:
space:
mode:
authoryiancar <yiangosyiangou@cytanet.com.cy>2018-08-29 22:14:49 +0200
committerJack Humbert <jack.humb@gmail.com>2018-08-29 22:14:49 +0200
commit621ce29a53e9e94e085fbd86c0b7134e9df4bfe5 (patch)
tree82c7d8258c4169284f7572500f9b292c7ee4634d /tmk_core/common/eeconfig.h
parent30680c6eb396a2bb06928afd69edae9908ac84fb (diff)
downloadqmk_firmware-621ce29a53e9e94e085fbd86c0b7134e9df4bfe5.tar.gz
qmk_firmware-621ce29a53e9e94e085fbd86c0b7134e9df4bfe5.tar.xz
STM32 EEPROM Emulation (#3741)
* STM32 EEPROM Emulation - Added EEPROM emulation libaries from libmaple and Arduino_STM32. https://github.com/rogerclarkmelbourne/Arduino_STM32 and https://github.com/leaflabs/libmaple. - Renamed teensy EEPROM library and added conditional selection of library. - Remapped EEPROM memory map for 16 byte blocks (as is with STM32f3xx MCUs). - Added EEPROM initialization in main.c of Chibios. - Added EEPROM format to clear the emulated pages when EEPROM is marked as invalid. * Fixed ifdef
Diffstat (limited to 'tmk_core/common/eeconfig.h')
-rw-r--r--tmk_core/common/eeconfig.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/tmk_core/common/eeconfig.h b/tmk_core/common/eeconfig.h
index 1397a90c7..fa498df48 100644
--- a/tmk_core/common/eeconfig.h
+++ b/tmk_core/common/eeconfig.h
@@ -25,6 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define EECONFIG_MAGIC_NUMBER (uint16_t)0xFEED
/* eeprom parameteter address */
+#if !defined(STM32F303xC)
#define EECONFIG_MAGIC (uint16_t *)0
#define EECONFIG_DEBUG (uint8_t *)2
#define EECONFIG_DEFAULT_LAYER (uint8_t *)3
@@ -38,6 +39,21 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
// EEHANDS for two handed boards
#define EECONFIG_HANDEDNESS (uint8_t *)14
+#else
+/* STM32F3 uses 16byte block. Reconfigure memory map */
+#define EECONFIG_MAGIC (uint16_t *)0
+#define EECONFIG_DEBUG (uint8_t *)1
+#define EECONFIG_DEFAULT_LAYER (uint8_t *)2
+#define EECONFIG_KEYMAP (uint8_t *)3
+#define EECONFIG_MOUSEKEY_ACCEL (uint8_t *)4
+#define EECONFIG_BACKLIGHT (uint8_t *)5
+#define EECONFIG_AUDIO (uint8_t *)6
+#define EECONFIG_RGBLIGHT (uint32_t *)7
+#define EECONFIG_UNICODEMODE (uint8_t *)9
+#define EECONFIG_STENOMODE (uint8_t *)10
+// EEHANDS for two handed boards
+#define EECONFIG_HANDEDNESS (uint8_t *)11
+#endif
/* debug bit */
#define EECONFIG_DEBUG_ENABLE (1<<0)