Skip to content

Commit

Permalink
eeprom_stm32: implement high density wear leveling (qmk#12567)
Browse files Browse the repository at this point in the history
* eeprom_stm32: implement wear leveling
Update EECONFIG_MAGIC_NUMBER
eeprom_stm32: check emulated eeprom size is large enough
* eeprom_stm32: Increasing simulated EEPROM density on stm32
* Adding utility script to decode emulated eeprom
* Adding unit tests
* Applying qmk cformat changes
* cleaned up flash mocking
* Fix for stm32eeprom_parser.py checking via signature with wrong base
* Fix for nk65 keyboard

Co-authored-by: Ilya Zhuravlev <[email protected]>
Co-authored-by: zvecr <[email protected]>
  • Loading branch information
3 people committed Aug 23, 2021
1 parent 2481e10 commit e756a21
Show file tree
Hide file tree
Showing 12 changed files with 1,529 additions and 177 deletions.
1 change: 1 addition & 0 deletions build_test.mk
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ include $(TMK_PATH)/common.mk
include $(QUANTUM_PATH)/debounce/tests/rules.mk
include $(QUANTUM_PATH)/sequencer/tests/rules.mk
include $(QUANTUM_PATH)/serial_link/tests/rules.mk
include $(TMK_PATH)/common/test/rules.mk
ifneq ($(filter $(FULL_TESTS),$(TEST)),)
include build_full_test.mk
endif
Expand Down
3 changes: 3 additions & 0 deletions keyboards/nk65/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,9 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
* both 128kb and 256kb versions of F303.
* Register 0x1FFFF7CC holds the size of the flash memory.
*/
#ifndef FLASHSIZE_BASE
# define FLASHSIZE_BASE ((uint32_t)0x1FFFF7CCU) /*!< FLASH Size register base address */
#endif
#define EEPROM_START_ADDRESS
#define FEE_MCU_FLASH_SIZE \
({ \
Expand Down
2 changes: 1 addition & 1 deletion quantum/eeconfig.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
#include <stdbool.h>

#ifndef EECONFIG_MAGIC_NUMBER
# define EECONFIG_MAGIC_NUMBER (uint16_t)0xFEEA // When changing, decrement this value to avoid future re-init issues
# define EECONFIG_MAGIC_NUMBER (uint16_t)0xFEE9 // When changing, decrement this value to avoid future re-init issues
#endif
#define EECONFIG_MAGIC_NUMBER_OFF (uint16_t)0xFFFF

Expand Down
1 change: 1 addition & 0 deletions testlist.mk
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ FULL_TESTS := $(TEST_LIST)
include $(ROOT_DIR)/quantum/debounce/tests/testlist.mk
include $(ROOT_DIR)/quantum/sequencer/tests/testlist.mk
include $(ROOT_DIR)/quantum/serial_link/tests/testlist.mk
include $(ROOT_DIR)/tmk_core/common/test/testlist.mk

define VALIDATE_TEST_LIST
ifneq ($1,)
Expand Down
Loading

0 comments on commit e756a21

Please sign in to comment.