| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- set(EEPROM_DRIVER "vendor" CACHE STRING "EEPROM driver")
- set_property(CACHE EEPROM_DRIVER PROPERTY STRINGS vendor custom transient i2c spi wear_leveling legacy_stm32_flash)
- set(WEAR_LEVELING_DRIVER "none" CACHE STRING "EEPROM wear-leveling driver")
- set_property(CACHE WEAR_LEVELING_DRIVER PROPERTY STRINGS custom embedded_flash spi_flash rp2040_flash legacy)
- target_compile_definitions(qmk PUBLIC
- EEPROM_ENABLE
- )
- target_include_directories(qmk PUBLIC
- platforms/${QMK_PLATFORM}/drivers/eeprom
- drivers/eeprom
- platforms/common
- )
- if(${EEPROM_DRIVER} STREQUAL "wear_leveling")
- target_compile_definitions(qmk PUBLIC
- EEPROM_DRIVER
- EEPROM_WEAR_LEVELING
- )
- target_sources(qmk PUBLIC
- drivers/eeprom/eeprom_driver.c
- drivers/eeprom/eeprom_wear_leveling.c
- )
- elseif(${EEPROM_DRIVER} STREQUAL "vendor")
- target_compile_definitions(qmk PUBLIC
- EEPROM_VENDOR
- )
- if(${QMK_PLATFORM} STREQUAL "chibios")
- if(${QMK_MCU} MATCHES "STM32F[1-9].*" OR ${QMK_MCU} MATCHES "WB32.*" OR ${QMK_MCU} MATCHES "GD32.*")
- target_compile_definitions(qmk PUBLIC
- EEPROM_DRIVER
- EEPROM_WEAR_LEVELING
- )
- target_sources(qmk PUBLIC
- drivers/eeprom/eeprom_driver.c
- drivers/eeprom/eeprom_wear_leveling.c
- )
- set(WEAR_LEVELING_DRIVER "embedded_flash")
- endif()
- endif()
- endif()
- if(NOT ${WEAR_LEVELING_DRIVER} STREQUAL "none")
- set(FNV_ENABLE TRUE)
- target_compile_definitions(qmk PUBLIC
- WEAR_LEVELING_ENABLE
- )
- target_include_directories(qmk PUBLIC
- platforms/${QMK_PLATFORM}/drivers/wear_leveling
- drivers/wear_leveling
- quantum/wear_leveling
- )
- target_sources(qmk PUBLIC quantum/wear_leveling/wear_leveling.c)
- if(${WEAR_LEVELING_DRIVER} STREQUAL "embedded_flash")
- target_compile_definitions(qmk PUBLIC
- HAL_USE_EFL
- WEAR_LEVELING_EMBEDDED_FLASH
- )
- target_sources(qmk PUBLIC
- platforms/${QMK_PLATFORM}/drivers/wear_leveling/wear_leveling_efl.c
- )
- # target_compile_options(qmk PUBLIC
- # -include ${CMAKE_SOURCE_DIR}/platforms/${QMK_PLATFORM}/drivers/wear_leveling/wear_leveling_efl_config.h
- # )
- target_precompile_headers(qmk PUBLIC
- ${CMAKE_SOURCE_DIR}/platforms/${QMK_PLATFORM}/drivers/wear_leveling/wear_leveling_efl_config.h
- )
- endif()
- endif()
|