mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-07-17 13:12:08 +00:00
storm commit, chibios exp
This commit is contained in:
parent
cfde338998
commit
a1cb005981
@ -101,5 +101,6 @@ add_subdirectory(tmk_core/protocol)
|
|||||||
|
|
||||||
include(features/oled)
|
include(features/oled)
|
||||||
include(features/backlight)
|
include(features/backlight)
|
||||||
|
include(features/eeprom)
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
41
chibios_mcu.json
Normal file
41
chibios_mcu.json
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
{
|
||||||
|
"MKL26Z64" : {
|
||||||
|
"MCU" : "cortex-m0plus",
|
||||||
|
"ARMV": 6,
|
||||||
|
"MCU_FAMILY": "KINETIS",
|
||||||
|
"MCU_SERIES": "KL2x",
|
||||||
|
"MCU_LDSCRIPT": "MKL26Z64",
|
||||||
|
"MCU_STARTUP": "kl2x",
|
||||||
|
"BOARD": "PJRC_TEENSY_LC"
|
||||||
|
},
|
||||||
|
"MK20DX128" : {
|
||||||
|
"MCU" : "cortex-m4",
|
||||||
|
"ARMV": 7,
|
||||||
|
"MCU_FAMILY": "KINETIS",
|
||||||
|
"MCU_SERIES": "K20x",
|
||||||
|
"MCU_LDSCRIPT": "MK20DX128",
|
||||||
|
"MCU_STARTUP": "k20x5",
|
||||||
|
"BOARD": "PJRC_TEENSY_3"
|
||||||
|
},
|
||||||
|
"MK20DX256" : {
|
||||||
|
"MCU" : "cortex-m4",
|
||||||
|
"ARMV": 7,
|
||||||
|
"MCU_FAMILY": "KINETIS",
|
||||||
|
"MCU_SERIES": "K20x",
|
||||||
|
"MCU_LDSCRIPT": "MK20DX256",
|
||||||
|
"MCU_STARTUP": "k20x7",
|
||||||
|
"BOARD": "PJRC_TEENSY_3_1"
|
||||||
|
},
|
||||||
|
"STM32F303" : {
|
||||||
|
"MCU" : "cortex-m4",
|
||||||
|
"ARMV": 7,
|
||||||
|
"MCU_FAMILY": "STM32",
|
||||||
|
"MCU_SERIES": "STM32F3xx",
|
||||||
|
"MCU_LDSCRIPT": "STM32F303xC",
|
||||||
|
"MCU_STARTUP": "stm32f3xx",
|
||||||
|
"BOARD": "GENERIC_STM32_F303XC",
|
||||||
|
"USE_FPU": true,
|
||||||
|
"UF2_FAMILY": "STM32F3",
|
||||||
|
"STM32_BOOTLOADER_ADDRESS": "0x1FFFD800"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,229 @@
|
|||||||
|
include(ParseMakefile)
|
||||||
|
|
||||||
|
set(MCU "cortex-m4")
|
||||||
|
set(ARMV 7)
|
||||||
|
set(MCU_FAMILY "STM32")
|
||||||
|
set(MCU_SERIES "STM32F3xx")
|
||||||
|
set(MCU_LDSCRIPT "STM32F303xC")
|
||||||
|
set(MCU_STARTUP "stm32f3xx")
|
||||||
|
set(BOARD "GENERIC_STM32_F303XC")
|
||||||
|
set(USE_FPU TRUE)
|
||||||
|
set(UF2_FAMILY "STM32F3")
|
||||||
|
set(STM32_BOOTLOADER_ADDRESS 0x1FFFD800)
|
||||||
|
|
||||||
|
set(MCU_PORT_NAME ${MCU_FAMILY})
|
||||||
|
set(MCU_ARCH ${MCU})
|
||||||
|
set(CHIBIOS_PORT "ARMv${ARMV}-M")
|
||||||
|
set(PLATFORM_NAME platform)
|
||||||
|
|
||||||
|
set(CHIBIOS ${CMAKE_SOURCE_DIR}/lib/chibios)
|
||||||
|
set(CHIBIOS_CONTRIB ${CMAKE_SOURCE_DIR}/lib/chibios-contrib)
|
||||||
|
set(EEPROM_DRIVER "wear_leveling" CACHE STRING "" FORCE)
|
||||||
|
|
||||||
|
# target_compile_definitions(qmk PUBLIC
|
||||||
|
# __ARM_ARCH_7M__
|
||||||
|
# STM32F303xC
|
||||||
|
# )
|
||||||
|
|
||||||
|
# F3 sources
|
||||||
|
set(CHIBIOS_PORT_SRCS
|
||||||
|
# RT
|
||||||
|
chcore.c
|
||||||
|
chcoreasm.S
|
||||||
|
)
|
||||||
|
foreach(SRC_FILE ${CHIBIOS_PORT_SRCS})
|
||||||
|
set(CHIBIOS_F3_SRC_FILE SRC_FILE-NOTFOUND)
|
||||||
|
find_file(CHIBIOS_F3_SRC_FILE ${SRC_FILE}
|
||||||
|
PATHS
|
||||||
|
${CHIBIOS}/os/common/ports/ARMv7-M/compilers/GCC
|
||||||
|
${CHIBIOS}/os/common/ports/ARMv7-M
|
||||||
|
CMAKE_FIND_ROOT_PATH_BOTH
|
||||||
|
)
|
||||||
|
|
||||||
|
target_sources(qmk PUBLIC ${CHIBIOS_F3_SRC_FILE})
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
target_include_directories(qmk PUBLIC
|
||||||
|
${CHIBIOS}/os/common/ports/ARMv7-M
|
||||||
|
${CHIBIOS}/os/hal/boards/ST_STM32F3_DISCOVERY
|
||||||
|
)
|
||||||
|
|
||||||
|
# F3 HAL specific
|
||||||
|
target_include_directories(qmk PUBLIC
|
||||||
|
${CHIBIOS}/os/hal/ports/common/ARMCMx
|
||||||
|
${CHIBIOS}/os/hal/include
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/STM32F3xx
|
||||||
|
|
||||||
|
${CHIBIOS}/os/common/portability/GCC
|
||||||
|
${CHIBIOS}/os/common/ports/ARM-common
|
||||||
|
${CHIBIOS}/os/common/ports/ARMv7-M
|
||||||
|
${CHIBIOS}/os/common/startup/ARMCMx/compilers/GCC
|
||||||
|
${CHIBIOS}/os/common/startup/ARMCMx/devices/STM32F3xx
|
||||||
|
${CHIBIOS}/os/common/ext/ARM/CMSIS/Core/Include
|
||||||
|
${CHIBIOS}/os/common/ext/ST/STM32F3xx
|
||||||
|
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/ADCv3
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/CANv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/DACv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/DMAv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/EXTIv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/GPIOv2
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/I2Cv2
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/RTCv2
|
||||||
|
# ${CHIBIOS}/os/hal/ports/STM32/LLD/SDIOv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/SPIv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/SYSTICKv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/TIMv1
|
||||||
|
# ${CHIBIOS}/os/hal/ports/STM32/LLD/USART
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/USARTv2
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/USBv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/xWDGv1
|
||||||
|
)
|
||||||
|
|
||||||
|
# source files for ChibiOS HAL
|
||||||
|
set(CHIBIOS_HAL_SRCS
|
||||||
|
|
||||||
|
# startup code
|
||||||
|
crt1.c
|
||||||
|
vectors.S
|
||||||
|
crt0_v7m.S
|
||||||
|
|
||||||
|
nvic.c
|
||||||
|
stm32_isr.c
|
||||||
|
|
||||||
|
# HAL-OSAL files
|
||||||
|
hal.c
|
||||||
|
hal_st.c
|
||||||
|
|
||||||
|
hal_buffers.c
|
||||||
|
hal_queues.c
|
||||||
|
hal_flash.c
|
||||||
|
hal_mmcsd.c
|
||||||
|
|
||||||
|
hal_adc.c
|
||||||
|
hal_can.c
|
||||||
|
# hal_crypto.c
|
||||||
|
hal_dac.c
|
||||||
|
hal_efl.c
|
||||||
|
hal_gpt.c
|
||||||
|
hal_i2c.c
|
||||||
|
hal_i2s.c
|
||||||
|
hal_icu.c
|
||||||
|
hal_mac.c
|
||||||
|
hal_mmc_spi.c
|
||||||
|
hal_pal.c
|
||||||
|
hal_pwm.c
|
||||||
|
hal_rtc.c
|
||||||
|
hal_sdc.c
|
||||||
|
hal_serial.c
|
||||||
|
hal_serial_usb.c
|
||||||
|
hal_sio.c
|
||||||
|
hal_spi.c
|
||||||
|
hal_trng.c
|
||||||
|
hal_uart.c
|
||||||
|
hal_usb.c
|
||||||
|
hal_wdg.c
|
||||||
|
hal_wspi.c
|
||||||
|
|
||||||
|
# LLD HAL files
|
||||||
|
hal_lld.c
|
||||||
|
|
||||||
|
hal_adc_lld.c
|
||||||
|
hal_can_lld.c
|
||||||
|
hal_crypto_lld.c
|
||||||
|
hal_dac_lld.c
|
||||||
|
stm32_dma.c
|
||||||
|
stm32_exti.c
|
||||||
|
hal_pal_lld.c
|
||||||
|
hal_i2c_lld.c
|
||||||
|
hal_mac_lld.c
|
||||||
|
hal_usb_lld.c
|
||||||
|
hal_wspi_lld.c
|
||||||
|
hal_trng_lld.c
|
||||||
|
hal_rtc_lld.c
|
||||||
|
hal_sdc_lld.c
|
||||||
|
|
||||||
|
hal_i2s_lld.c
|
||||||
|
hal_spi_v2_lld.c
|
||||||
|
|
||||||
|
hal_st_lld.c
|
||||||
|
hal_gpt_lld.c
|
||||||
|
hal_icu_lld.c
|
||||||
|
hal_pwm_lld.c
|
||||||
|
|
||||||
|
hal_serial_lld.c
|
||||||
|
hal_uart_lld.c
|
||||||
|
|
||||||
|
hal_wdg_lld.c
|
||||||
|
|
||||||
|
# OSAL
|
||||||
|
osal.c
|
||||||
|
|
||||||
|
board.c
|
||||||
|
)
|
||||||
|
|
||||||
|
foreach(SRC_FILE ${CHIBIOS_HAL_SRCS})
|
||||||
|
|
||||||
|
set(CHIBIOS_HAL_SRC_FILE SRC_FILE -NOTFOUND)
|
||||||
|
|
||||||
|
find_file(CHIBIOS_HAL_SRC_FILE ${SRC_FILE}
|
||||||
|
PATHS
|
||||||
|
|
||||||
|
${CHIBIOS}/os/common/ports/ARMv7-M/compilers/GCC
|
||||||
|
${CHIBIOS}/os/common/startup/ARMCMx/compilers/GCC
|
||||||
|
|
||||||
|
${CHIBIOS}/os/hal/src
|
||||||
|
${CHIBIOS}/os/hal/ports/common/ARMCMx
|
||||||
|
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/STM32F3xx
|
||||||
|
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/STM32F3xx
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/ADCv3
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/CANv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/DACv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/DMAv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/EXTIv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/GPIOv2
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/I2Cv2
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/RTCv2
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/SPIv2
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/SYSTICKv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/TIMv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/USARTv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/USBv1
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/LLD/xWDGv1
|
||||||
|
|
||||||
|
# ${OSHAL_PATH}
|
||||||
|
|
||||||
|
# ${CHIBIOS_BOARD_DEFINITIONS_PATH}
|
||||||
|
|
||||||
|
CMAKE_FIND_ROOT_PATH_BOTH
|
||||||
|
)
|
||||||
|
if(EXISTS "${CHIBIOS_HAL_SRC_FILE}")
|
||||||
|
target_sources(qmk PUBLIC ${CHIBIOS_HAL_SRC_FILE})
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
# chibios
|
||||||
|
target_include_directories(qmk PUBLIC
|
||||||
|
# ${CHIBIOS}/os/hal/include
|
||||||
|
# ${CHIBIOS}/os/hal/osal/sb
|
||||||
|
# ${CHIBIOS}/os/common/portability/GCC
|
||||||
|
# ${CHIBIOS}/os/sb/user
|
||||||
|
# ${CHIBIOS}/os/sb/common
|
||||||
|
|
||||||
|
${CHIBIOS}/os
|
||||||
|
${CHIBIOS}/os/license
|
||||||
|
${CHIBIOS}/os/hal/ports/common/ARMCMx
|
||||||
|
${CHIBIOS}/os/hal/include
|
||||||
|
${CHIBIOS}/os/hal/osal/rt-nil
|
||||||
|
${CHIBIOS}/os/oslib/include
|
||||||
|
${CHIBIOS}/os/rt/include
|
||||||
|
${CHIBIOS}/os/hal/ports/STM32/${MCU_SERIES}
|
||||||
|
${CHIBIOS}/os/common/ports/ARMv7-M
|
||||||
|
${CHIBIOS}/os/common/ports/ARMv7-M/compilers/GCC
|
||||||
|
${CHIBIOS}/os/common/abstractions/cmsis_os
|
||||||
|
${CHIBIOS}/os/common/startup/ARMCMx/compilers/GCC
|
||||||
|
${CHIBIOS}/os/common/ext/CMSIS/include
|
||||||
|
${CHIBIOS}/os/common/ext/CMSIS/ST/${MCU_SERIES}
|
||||||
|
)
|
44
cmake/ParseMakefile.cmake
Normal file
44
cmake/ParseMakefile.cmake
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
# Simple CMake utility to read variables from MK files
|
||||||
|
# - Gets contents from given file (name or path)
|
||||||
|
# - Parses the assignment statements
|
||||||
|
# - Makes the same assignments in the PARENT_SCOPE
|
||||||
|
|
||||||
|
if(POLICY CMP0007)
|
||||||
|
cmake_policy(SET CMP0007 NEW)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
function(ParseMakefile MKFile)
|
||||||
|
_ParseMakefile(${MKFile})
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
macro(_ParseMakefile MKFile)
|
||||||
|
file(READ "${MKFile}" FileContents)
|
||||||
|
string(REPLACE "\\\n" "" FileContents ${FileContents})
|
||||||
|
string(REPLACE "\n" ";" FileLines ${FileContents})
|
||||||
|
list(REMOVE_ITEM FileLines "")
|
||||||
|
foreach(line ${FileLines})
|
||||||
|
# if(line MATCHES "$\\((.+)\\)")
|
||||||
|
# string(REPLACE "(${CMAKE_MATCH_1})" "{${CMAKE_MATCH_1}}" line ${line})
|
||||||
|
# endif()
|
||||||
|
# if(line MATCHES "^include (.+)$")
|
||||||
|
# set(MAKE_CHILD ${CMAKE_MATCH_1})
|
||||||
|
# message(STATUS "Reading ${MAKE_CHILD}")
|
||||||
|
# _ParseMakefile("${MAKE_CHILD}")
|
||||||
|
# else()
|
||||||
|
string(REPLACE "=" ";" line_split ${line})
|
||||||
|
list(LENGTH line_split count)
|
||||||
|
if (count LESS 2)
|
||||||
|
message(STATUS "Skipping ${line}")
|
||||||
|
continue()
|
||||||
|
endif()
|
||||||
|
list(GET line_split -1 value)
|
||||||
|
string(STRIP ${value} value)
|
||||||
|
separate_arguments(value)
|
||||||
|
list(REMOVE_AT line_split -1)
|
||||||
|
foreach(var_name ${line_split})
|
||||||
|
string(STRIP ${var_name} var_name)
|
||||||
|
set(${var_name} ${value} PARENT_SCOPE)
|
||||||
|
endforeach()
|
||||||
|
# endif()
|
||||||
|
endforeach()
|
||||||
|
endmacro()
|
54
cmake/features/eeprom.cmake
Normal file
54
cmake/features/eeprom.cmake
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
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)
|
||||||
|
|
||||||
|
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
|
||||||
|
)
|
||||||
|
target_include_directories(qmk PUBLIC drivers/eeprom)
|
||||||
|
elseif(${EEPROM_DRIVER} STREQUAL "vendor")
|
||||||
|
target_compile_definitions(qmk PUBLIC
|
||||||
|
EEPROM_VENDOR
|
||||||
|
)
|
||||||
|
if(${QMK_PLATFORM} STREQUAL "chibios")
|
||||||
|
if(${QMK_MCU} MATHCES "STM32F.*")
|
||||||
|
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" FORCE)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT ${WEAR_LEVELING_DRIVER} STREQUAL "none")
|
||||||
|
target_compile_definitions(qmk PUBLIC
|
||||||
|
WEAR_LEVELING_ENABLE
|
||||||
|
WEAR_LEVELING_EMBEDDED_FLASH
|
||||||
|
)
|
||||||
|
target_include_directories(qmk PUBLIC
|
||||||
|
platforms/${QMK_PLATFORM}/drivers/wear_leveling
|
||||||
|
drivers/wear_leveling
|
||||||
|
quantum/wear_leveling
|
||||||
|
)
|
||||||
|
target_sources(qmk PUBLIC wear_leveling.c)
|
||||||
|
|
||||||
|
if(NOT ${WEAR_LEVELING_DRIVER} STREQUAL "embedded_flash")
|
||||||
|
target_compile_definitions(qmk PUBLIC
|
||||||
|
HAL_USE_EFL
|
||||||
|
)
|
||||||
|
target_sources(qmk PUBLIC wear_leveling_efl.c)
|
||||||
|
# post config.h platforms/${QMK_PLATFORM}/drivers/wear_leveling/wear_leveling_efl_config.h
|
||||||
|
endif()
|
||||||
|
endif()
|
@ -68,23 +68,11 @@ add_compile_options(
|
|||||||
# $<$<COMPILE_LANGUAGE:CXX>:-fno-exceptions>
|
# $<$<COMPILE_LANGUAGE:CXX>:-fno-exceptions>
|
||||||
)
|
)
|
||||||
|
|
||||||
add_compile_definitions(
|
|
||||||
THUMB_PRESENT
|
|
||||||
THUMB_NO_INTERWORKING
|
|
||||||
PROTOCOL_CHIBIOS
|
|
||||||
MCU_${MCU_FAMILY}
|
|
||||||
PLATFORM_SUPPORTS_SYNCHRONIZATION
|
|
||||||
PORT_IGNORE_GCC_VERSION_CHECK=1
|
|
||||||
)
|
|
||||||
|
|
||||||
add_link_options(
|
add_link_options(
|
||||||
-Wl,--gc-sections
|
-Wl,--gc-sections
|
||||||
-nostartfiles
|
-nostartfiles
|
||||||
-Wl,--no-wchar-size-warning
|
-Wl,--no-wchar-size-warning
|
||||||
--specs=nano.specs
|
--specs=nano.specs
|
||||||
-mthumb
|
|
||||||
-mno-thumb-interwork
|
|
||||||
-mno-unaligned-access
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if(${USE_FPU})
|
if(${USE_FPU})
|
||||||
|
@ -1,6 +1,37 @@
|
|||||||
add_link_options(
|
find_package(chibios REQUIRED)
|
||||||
|
|
||||||
|
target_link_options(qmk PUBLIC
|
||||||
-mcpu=${QMK_MCU}
|
-mcpu=${QMK_MCU}
|
||||||
|
-mthumb
|
||||||
|
-mno-thumb-interwork
|
||||||
|
-mno-unaligned-access
|
||||||
)
|
)
|
||||||
|
|
||||||
|
target_compile_definitions(qmk PUBLIC
|
||||||
|
MCU_${MCU_FAMILY}
|
||||||
|
THUMB_PRESENT
|
||||||
|
THUMB_NO_INTERWORKING
|
||||||
|
PLATFORM_SUPPORTS_SYNCHRONIZATION
|
||||||
|
PORT_IGNORE_GCC_VERSION_CHECK=1
|
||||||
|
)
|
||||||
|
|
||||||
|
if(NOT ${USE_FPU})
|
||||||
|
target_compile_options(qmk PUBLIC
|
||||||
|
-mfloat-abi=hard
|
||||||
|
-mfpu=fpv4-sp-d16
|
||||||
|
-fsingle-precision-constant
|
||||||
|
)
|
||||||
|
target_compile_definitions(qmk PUBLIC
|
||||||
|
CORTEX_USE_FPU=TRUE
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
target_compile_definitions(qmk PUBLIC
|
||||||
|
CORTEX_USE_FPU=FALSE
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
# add_library(platforms_chibios)
|
# add_library(platforms_chibios)
|
||||||
target_include_directories(qmk PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
target_include_directories(qmk PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||||
|
target_include_directories(qmk PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/boards/common/configs)
|
||||||
|
target_include_directories(qmk PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD}/configs)
|
||||||
# target_link_libraries(platforms_chibios ${QMK_TARGET})
|
# target_link_libraries(platforms_chibios ${QMK_TARGET})
|
@ -35,5 +35,5 @@ target_include_directories(qmk PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/bootmagic)
|
|||||||
# target_link_libraries(quantum tmk_core_protocol_${QMK_PROTOCOL})
|
# target_link_libraries(quantum tmk_core_protocol_${QMK_PROTOCOL})
|
||||||
|
|
||||||
# if no printf
|
# if no printf
|
||||||
# target_sources(quantum PRIVATE ${CMAKE_SOURCE_DIR}/lib/printf/src/printf/printf.c)
|
target_sources(qmk PUBLIC ${CMAKE_SOURCE_DIR}/lib/printf/src/printf/printf.c)
|
||||||
# target_include_directories(quantum PUBLIC ${CMAKE_SOURCE_DIR}/lib/printf/src/printf)
|
target_include_directories(qmk PUBLIC ${CMAKE_SOURCE_DIR}/lib/printf/src/printf)
|
@ -1,10 +1,10 @@
|
|||||||
add_compile_definitions(
|
target_compile_definitions(qmk PUBLIC
|
||||||
PROTOCOL_CHIBIOS
|
PROTOCOL_CHIBIOS
|
||||||
FIXED_CONTROL_ENDPOINT_SIZE=64
|
FIXED_CONTROL_ENDPOINT_SIZE=64
|
||||||
FIXED_NUM_CONFIGURATIONS=1
|
FIXED_NUM_CONFIGURATIONS=1
|
||||||
)
|
)
|
||||||
|
|
||||||
add_library(tmk_core_protocol_chibios
|
target_sources(qmk PUBLIC
|
||||||
usb_main.c
|
usb_main.c
|
||||||
chibios.c
|
chibios.c
|
||||||
../usb_descriptor.c
|
../usb_descriptor.c
|
||||||
@ -12,10 +12,7 @@ add_library(tmk_core_protocol_chibios
|
|||||||
usb_util.c
|
usb_util.c
|
||||||
)
|
)
|
||||||
|
|
||||||
# find_package(lufa REQUIRED)
|
find_package(chibios REQUIRED)
|
||||||
|
|
||||||
target_include_directories(tmk_core_protocol_chibios PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
target_include_directories(qmk PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||||
target_include_directories(tmk_core_protocol_chibios PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/lufa_utils)
|
target_include_directories(qmk PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/lufa_utils)
|
||||||
|
|
||||||
# target_link_libraries(tmk_core_protocol_chibios PUBLIC lufa)
|
|
||||||
target_link_libraries(tmk_core_protocol_chibios PUBLIC quantum)
|
|
Loading…
Reference in New Issue
Block a user