diff options
| author | Jack Humbert <jack.humb@gmail.com> | 2019-01-10 11:22:57 -0500 |
|---|---|---|
| committer | MechMerlin <30334081+mechmerlin@users.noreply.github.com> | 2019-01-10 08:22:57 -0800 |
| commit | 3cf179be61a10860b2b66aecf2ec5ca6f0e30605 (patch) | |
| tree | 960c7bdde165f4419a96c2d48049e22226912882 /quantum/mcu_selection.mk | |
| parent | ebbc372f72993123cd24fe27228e8d07c9b8d7fb (diff) | |
| download | qmk_firmware-3cf179be61a10860b2b66aecf2ec5ca6f0e30605.tar.gz qmk_firmware-3cf179be61a10860b2b66aecf2ec5ca6f0e30605.zip | |
Adds Proton C Conversion (#4661)
* adds proton c base
* fixes custom matrix include
* adds readme.md
* initial proton coversion, no pin mapping
* start of mcu selection
* add pin mapping and sweet16 test
* add at90 to list
* disable backlight, fix d7
* update flag names
* doc updates
* proton c update for mcu selection
Diffstat (limited to 'quantum/mcu_selection.mk')
| -rw-r--r-- | quantum/mcu_selection.mk | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/quantum/mcu_selection.mk b/quantum/mcu_selection.mk new file mode 100644 index 000000000..209b578ea --- /dev/null +++ b/quantum/mcu_selection.mk | |||
| @@ -0,0 +1,70 @@ | |||
| 1 | |||
| 2 | ifneq ($(findstring STM32F303, $(MCU)),) | ||
| 3 | ## chip/board settings | ||
| 4 | # - the next two should match the directories in | ||
| 5 | # <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) | ||
| 6 | MCU_FAMILY ?= STM32 | ||
| 7 | MCU_SERIES ?= STM32F3xx | ||
| 8 | |||
| 9 | # Linker script to use | ||
| 10 | # - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/ | ||
| 11 | # or <this_dir>/ld/ | ||
| 12 | MCU_LDSCRIPT ?= STM32F303xC | ||
| 13 | |||
| 14 | # Startup code to use | ||
| 15 | # - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/ | ||
| 16 | MCU_STARTUP ?= stm32f3xx | ||
| 17 | |||
| 18 | # Board: it should exist either in <chibios>/os/hal/boards/ | ||
| 19 | # or <this_dir>/boards | ||
| 20 | BOARD ?= GENERIC_STM32_F303XC | ||
| 21 | |||
| 22 | # Cortex version | ||
| 23 | MCU = cortex-m4 | ||
| 24 | |||
| 25 | # ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7 | ||
| 26 | ARMV ?= 7 | ||
| 27 | |||
| 28 | USE_FPU = yes | ||
| 29 | |||
| 30 | # Vector table for application | ||
| 31 | # 0x00000000-0x00001000 area is occupied by bootlaoder.*/ | ||
| 32 | # The CORTEX_VTOR... is needed only for MCHCK/Infinity KB | ||
| 33 | # OPT_DEFS = -DCORTEX_VTOR_INIT=0x08005000 | ||
| 34 | |||
| 35 | # Options to pass to dfu-util when flashing | ||
| 36 | DFU_ARGS ?= -d 0483:df11 -a 0 -s 0x08000000:leave | ||
| 37 | endif | ||
| 38 | |||
| 39 | ifneq (,$(filter $(MCU),atmega32u4 at90usb1286)) | ||
| 40 | # Processor frequency. | ||
| 41 | # This will define a symbol, F_CPU, in all source code files equal to the | ||
| 42 | # processor frequency in Hz. You can then use this symbol in your source code to | ||
| 43 | # calculate timings. Do NOT tack on a 'UL' at the end, this will be done | ||
| 44 | # automatically to create a 32-bit value in your source code. | ||
| 45 | # | ||
| 46 | # This will be an integer division of F_USB below, as it is sourced by | ||
| 47 | # F_USB after it has run through any CPU prescalers. Note that this value | ||
| 48 | # does not *change* the processor frequency - it should merely be updated to | ||
| 49 | # reflect the processor speed set externally so that the code can use accurate | ||
| 50 | # software delays. | ||
| 51 | F_CPU ?= 16000000 | ||
| 52 | |||
| 53 | # LUFA specific | ||
| 54 | # | ||
| 55 | # Target architecture (see library "Board Types" documentation). | ||
| 56 | ARCH ?= AVR8 | ||
| 57 | |||
| 58 | # Input clock frequency. | ||
| 59 | # This will define a symbol, F_USB, in all source code files equal to the | ||
| 60 | # input clock frequency (before any prescaling is performed) in Hz. This value may | ||
| 61 | # differ from F_CPU if prescaling is used on the latter, and is required as the | ||
| 62 | # raw input clock is fed directly to the PLL sections of the AVR for high speed | ||
| 63 | # clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' | ||
| 64 | # at the end, this will be done automatically to create a 32-bit value in your | ||
| 65 | # source code. | ||
| 66 | # | ||
| 67 | # If no clock division is performed on the input clock inside the AVR (via the | ||
| 68 | # CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. | ||
| 69 | F_USB ?= $(F_CPU) | ||
| 70 | endif | ||
