From ae5f818d5a1efa321ffc0c6e659fa8fb47e79a01 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Mon, 31 Oct 2022 18:02:43 -0700 Subject: Simplify Keymap Config EEPROM (#18886) * Simplify Keymap Config EEPROM * Decrement eeconfig magic number due to eeconfig changes * Update quantum/eeconfig.h Co-authored-by: Joel Challis --- quantum/eeconfig.c | 11 ++++------- quantum/eeconfig.h | 11 +++-------- 2 files changed, 7 insertions(+), 15 deletions(-) (limited to 'quantum') diff --git a/quantum/eeconfig.c b/quantum/eeconfig.c index 27a0f6d48f..2e2df11d69 100644 --- a/quantum/eeconfig.c +++ b/quantum/eeconfig.c @@ -45,10 +45,8 @@ void eeconfig_init_quantum(void) { eeprom_update_byte(EECONFIG_DEBUG, 0); eeprom_update_byte(EECONFIG_DEFAULT_LAYER, 0); default_layer_state = 0; - eeprom_update_byte(EECONFIG_KEYMAP_LOWER_BYTE, 0); - // Enable oneshot and autocorrect by default: 0b0001 0100 - eeprom_update_byte(EECONFIG_KEYMAP_UPPER_BYTE, 0x14); - eeprom_update_byte(EECONFIG_MOUSEKEY_ACCEL, 0); + // Enable oneshot and autocorrect by default: 0b0001 0100 0000 0000 + eeprom_update_word(EECONFIG_KEYMAP, 0x1400); eeprom_update_byte(EECONFIG_BACKLIGHT, 0); eeprom_update_byte(EECONFIG_AUDIO, 0xFF); // On by default eeprom_update_dword(EECONFIG_RGBLIGHT, 0); @@ -167,15 +165,14 @@ void eeconfig_update_default_layer(uint8_t val) { * FIXME: needs doc */ uint16_t eeconfig_read_keymap(void) { - return (eeprom_read_byte(EECONFIG_KEYMAP_LOWER_BYTE) | (eeprom_read_byte(EECONFIG_KEYMAP_UPPER_BYTE) << 8)); + return eeprom_read_word(EECONFIG_KEYMAP); } /** \brief eeconfig update keymap * * FIXME: needs doc */ void eeconfig_update_keymap(uint16_t val) { - eeprom_update_byte(EECONFIG_KEYMAP_LOWER_BYTE, val & 0xFF); - eeprom_update_byte(EECONFIG_KEYMAP_UPPER_BYTE, (val >> 8) & 0xFF); + eeprom_update_word(EECONFIG_KEYMAP, val); } /** \brief eeconfig read audio diff --git a/quantum/eeconfig.h b/quantum/eeconfig.h index 565a0dbe5b..9c4617c962 100644 --- a/quantum/eeconfig.h +++ b/quantum/eeconfig.h @@ -21,7 +21,7 @@ along with this program. If not, see . #include #ifndef EECONFIG_MAGIC_NUMBER -# define EECONFIG_MAGIC_NUMBER (uint16_t)0xFEE8 // When changing, decrement this value to avoid future re-init issues +# define EECONFIG_MAGIC_NUMBER (uint16_t)0xFEE7 // When changing, decrement this value to avoid future re-init issues #endif #define EECONFIG_MAGIC_NUMBER_OFF (uint16_t)0xFFFF @@ -29,8 +29,7 @@ along with this program. If not, see . #define EECONFIG_MAGIC (uint16_t *)0 #define EECONFIG_DEBUG (uint8_t *)2 #define EECONFIG_DEFAULT_LAYER (uint8_t *)3 -#define EECONFIG_KEYMAP (uint8_t *)4 -#define EECONFIG_MOUSEKEY_ACCEL (uint8_t *)5 +#define EECONFIG_KEYMAP (uint16_t *)4 #define EECONFIG_BACKLIGHT (uint8_t *)6 #define EECONFIG_AUDIO (uint8_t *)7 #define EECONFIG_RGBLIGHT (uint32_t *)8 @@ -51,10 +50,8 @@ along with this program. If not, see . #define EECONFIG_LED_MATRIX_EXTENDED (uint16_t *)32 #define EECONFIG_RGB_MATRIX_EXTENDED (uint16_t *)32 -// TODO: Combine these into a single word and single block of EEPROM -#define EECONFIG_KEYMAP_UPPER_BYTE (uint8_t *)34 // Size of EEPROM being used, other code can refer to this for available EEPROM -#define EECONFIG_SIZE 35 +#define EECONFIG_SIZE 34 /* debug bit */ #define EECONFIG_DEBUG_ENABLE (1 << 0) #define EECONFIG_DEBUG_MATRIX (1 << 1) @@ -71,8 +68,6 @@ along with this program. If not, see . #define EECONFIG_KEYMAP_SWAP_BACKSLASH_BACKSPACE (1 << 6) #define EECONFIG_KEYMAP_NKRO (1 << 7) -#define EECONFIG_KEYMAP_LOWER_BYTE EECONFIG_KEYMAP - bool eeconfig_is_enabled(void); bool eeconfig_is_disabled(void); -- cgit v1.2.3