mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
28aed3cb97
This splits up the clock configs. It allows CPU_FAM based file sourcing and also common CPU_FAMs. The dependancies are also included in wildcards would be used for the CPU_FAM macro. This should be much more readable. This also takes into account the HSE speeds in order to match the make/header resolution. Some hidden symbols were added to make sorting many CPU_SERIES dependencies easier.
88 lines
2.2 KiB
Plaintext
88 lines
2.2 KiB
Plaintext
# Copyright (c) 2020 Inria
|
|
#
|
|
# This file is subject to the terms and conditions of the GNU Lesser
|
|
# General Public License v2.1. See the file LICENSE in the top level
|
|
# directory for more details.
|
|
#
|
|
|
|
config CPU_STM32
|
|
bool
|
|
select HAS_CPU_STM32
|
|
select HAS_PERIPH_CPUID
|
|
select HAS_PERIPH_GPIO
|
|
select HAS_PERIPH_GPIO_IRQ
|
|
select HAS_PERIPH_TIMER_PERIODIC
|
|
select HAS_PERIPH_RTT_OVERFLOW
|
|
select HAS_PERIPH_UART_MODECFG
|
|
select HAS_PERIPH_UART_NONBLOCKING
|
|
|
|
# This CPU requires periph_rtc when periph_rtc_mem
|
|
select MODULE_PERIPH_RTC if MODULE_PERIPH_RTC_MEM && HAS_PERIPH_RTC
|
|
|
|
menu "STM32 configuration"
|
|
|
|
# Common CPU symbol
|
|
config CPU
|
|
default "stm32" if CPU_STM32
|
|
|
|
# Definition of specific features
|
|
config HAS_CPU_STM32
|
|
bool
|
|
help
|
|
Indicates that a 'stm32' cpu is being used.
|
|
|
|
config HAS_BOOTLOADER_STM32
|
|
bool
|
|
help
|
|
Indicates that the stm32 bootloader is being used.
|
|
|
|
config MODULE_BOOTLOADER_STM32
|
|
bool "STM32 DFU/UART/SPI bootloader"
|
|
depends on HAS_BOOTLOADER_STM32
|
|
depends on TEST_KCONFIG
|
|
|
|
|
|
menu "STM32 clock configuration"
|
|
depends on CPU_STM32
|
|
|
|
rsource "kconfigs/Kconfig.clk"
|
|
rsource "kconfigs/$(CPU_FAM)/Kconfig.clk"
|
|
|
|
endmenu
|
|
|
|
rsource "kconfigs/$(CPU_FAM)/Kconfig"
|
|
rsource "kconfigs/$(CPU_FAM)/Kconfig.lines"
|
|
rsource "kconfigs/$(CPU_FAM)/Kconfig.models"
|
|
|
|
choice
|
|
prompt "ReaDout Protection level"
|
|
default RDP0
|
|
help
|
|
Set minimum running RDP level.
|
|
RDP0 is full debug permissions, RDP1 disables read from Flash but
|
|
otherwise leaves debug enabled, RDP2 disables JTAG completely. If
|
|
there is a mismatch between desired RDP level here and RDP level
|
|
set on the chip, early cpu init will hang. This ensures production
|
|
devices with the wrong RDP level, by fault or malace intent, will
|
|
not run. See cpu manual for further details on RDP.
|
|
depends on (CPU_FAM_F1 || CPU_FAM_F2 || CPU_FAM_F3 || CPU_FAM_F4 || CPU_FAM_F7)
|
|
config RDP0
|
|
bool "RDP0"
|
|
config RDP1
|
|
bool "RDP1"
|
|
config RDP2
|
|
bool "RDP2"
|
|
endchoice
|
|
|
|
if TEST_KCONFIG
|
|
|
|
rsource "periph/Kconfig"
|
|
rsource "stmclk/Kconfig"
|
|
rsource "vectors/Kconfig"
|
|
|
|
endif # TEST_KCONFIG
|
|
|
|
endmenu
|
|
|
|
source "$(RIOTCPU)/cortexm_common/Kconfig"
|