eeprom_stm32: implement high density wear leveling (#12567)
* 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 <whatever@xyz.is> Co-authored-by: zvecr <git@zvecr.com>
This commit is contained in:
parent
2481e109a0
commit
e756a21636
12 changed files with 1549 additions and 197 deletions
23
tmk_core/common/test/rules.mk
Normal file
23
tmk_core/common/test/rules.mk
Normal file
|
@ -0,0 +1,23 @@
|
|||
eeprom_stm32_DEFS := -DFLASH_STM32_MOCKED -DNO_PRINT -DFEE_FLASH_BASE=FlashBuf
|
||||
eeprom_stm32_tiny_DEFS := $(eeprom_stm32_DEFS) \
|
||||
-DFEE_MCU_FLASH_SIZE=1 \
|
||||
-DMOCK_FLASH_SIZE=1024 \
|
||||
-DFEE_PAGE_SIZE=512 \
|
||||
-DFEE_DENSITY_PAGES=1
|
||||
eeprom_stm32_large_DEFS := $(eeprom_stm32_DEFS) \
|
||||
-DFEE_MCU_FLASH_SIZE=64 \
|
||||
-DMOCK_FLASH_SIZE=65536 \
|
||||
-DFEE_PAGE_SIZE=2048 \
|
||||
-DFEE_DENSITY_PAGES=16
|
||||
|
||||
eeprom_stm32_INC := \
|
||||
$(TMK_PATH)/common/chibios/
|
||||
eeprom_stm32_tiny_INC := $(eeprom_stm32_INC)
|
||||
eeprom_stm32_large_INC := $(eeprom_stm32_INC)
|
||||
|
||||
eeprom_stm32_SRC := \
|
||||
$(TMK_PATH)/common/test/eeprom_stm32_tests.cpp \
|
||||
$(TMK_PATH)/common/test/flash_stm32_mock.c \
|
||||
$(TMK_PATH)/common/chibios/eeprom_stm32.c
|
||||
eeprom_stm32_tiny_SRC := $(eeprom_stm32_SRC)
|
||||
eeprom_stm32_large_SRC := $(eeprom_stm32_SRC)
|
Loading…
Add table
Add a link
Reference in a new issue