303 lines
7.2 KiB
Plaintext
303 lines
7.2 KiB
Plaintext
# Nordic Semiconductor nRF53 MCU line
|
|
|
|
# Copyright (c) 2019 Nordic Semiconductor ASA
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
if SOC_SERIES_NRF53X
|
|
config SOC_NRF5340_CPUAPP
|
|
bool
|
|
select CPU_HAS_NRF_IDAU
|
|
select CPU_HAS_FPU
|
|
select ARMV8_M_DSP
|
|
select HAS_HW_NRF_CC312
|
|
select HAS_HW_NRF_COMP
|
|
select HAS_HW_NRF_CLOCK
|
|
select HAS_HW_NRF_DCNF
|
|
select HAS_HW_NRF_DPPIC
|
|
select HAS_HW_NRF_EGU0
|
|
select HAS_HW_NRF_EGU1
|
|
select HAS_HW_NRF_EGU2
|
|
select HAS_HW_NRF_EGU3
|
|
select HAS_HW_NRF_EGU4
|
|
select HAS_HW_NRF_EGU5
|
|
select HAS_HW_NRF_GPIO0
|
|
select HAS_HW_NRF_GPIO1
|
|
select HAS_HW_NRF_GPIOTE
|
|
select HAS_HW_NRF_I2S
|
|
select HAS_HW_NRF_IPC
|
|
select HAS_HW_NRF_KMU
|
|
select HAS_HW_NRF_LPCOMP
|
|
select HAS_HW_NRF_MUTEX
|
|
select HAS_HW_NRF_NFCT
|
|
select HAS_HW_NRF_NVMC_PE
|
|
select HAS_HW_NRF_OSCILLATORS
|
|
select HAS_HW_NRF_PDM
|
|
select HAS_HW_NRF_POWER
|
|
select HAS_HW_NRF_PWM0
|
|
select HAS_HW_NRF_PWM1
|
|
select HAS_HW_NRF_PWM2
|
|
select HAS_HW_NRF_PWM3
|
|
select HAS_HW_NRF_QDEC0
|
|
select HAS_HW_NRF_QDEC1
|
|
select HAS_HW_NRF_QSPI
|
|
select HAS_HW_NRF_REGULATORS
|
|
select HAS_HW_NRF_RESET
|
|
select HAS_HW_NRF_RTC0
|
|
select HAS_HW_NRF_RTC1
|
|
select HAS_HW_NRF_SAADC
|
|
select HAS_HW_NRF_SPIM0
|
|
select HAS_HW_NRF_SPIM1
|
|
select HAS_HW_NRF_SPIM2
|
|
select HAS_HW_NRF_SPIM3
|
|
select HAS_HW_NRF_SPIM4
|
|
select HAS_HW_NRF_SPIS0
|
|
select HAS_HW_NRF_SPIS1
|
|
select HAS_HW_NRF_SPIS2
|
|
select HAS_HW_NRF_SPIS3
|
|
select HAS_HW_NRF_SPU
|
|
select HAS_HW_NRF_TIMER0
|
|
select HAS_HW_NRF_TIMER1
|
|
select HAS_HW_NRF_TIMER2
|
|
select HAS_HW_NRF_TWIM0
|
|
select HAS_HW_NRF_TWIM1
|
|
select HAS_HW_NRF_TWIM2
|
|
select HAS_HW_NRF_TWIM3
|
|
select HAS_HW_NRF_TWIS0
|
|
select HAS_HW_NRF_TWIS1
|
|
select HAS_HW_NRF_TWIS2
|
|
select HAS_HW_NRF_TWIS3
|
|
select HAS_HW_NRF_UARTE0
|
|
select HAS_HW_NRF_UARTE1
|
|
select HAS_HW_NRF_UARTE2
|
|
select HAS_HW_NRF_UARTE3
|
|
select HAS_HW_NRF_USBD
|
|
select HAS_HW_NRF_USBREG
|
|
select HAS_HW_NRF_VMC
|
|
select HAS_HW_NRF_WDT0
|
|
select HAS_HW_NRF_WDT1
|
|
|
|
config SOC_NRF5340_CPUNET
|
|
bool
|
|
select HAS_HW_NRF_ACL
|
|
select HAS_HW_NRF_CLOCK
|
|
select HAS_HW_NRF_CCM
|
|
select HAS_HW_NRF_CCM_LFLEN_8BIT
|
|
select HAS_HW_NRF_DPPIC
|
|
select HAS_HW_NRF_ECB
|
|
select HAS_HW_NRF_EGU0
|
|
select HAS_HW_NRF_GPIO0
|
|
select HAS_HW_NRF_GPIO1
|
|
select HAS_HW_NRF_GPIOTE
|
|
select HAS_HW_NRF_IPC
|
|
select HAS_HW_NRF_NVMC_PE
|
|
select HAS_HW_NRF_POWER
|
|
select HAS_HW_NRF_RADIO_BLE_2M
|
|
select HAS_HW_NRF_RADIO_BLE_CODED
|
|
select HAS_HW_NRF_RADIO_IEEE802154
|
|
select HAS_HW_NRF_RNG
|
|
select HAS_HW_NRF_RTC0
|
|
select HAS_HW_NRF_RTC1
|
|
select HAS_HW_NRF_SPIM0
|
|
select HAS_HW_NRF_SPIS0
|
|
select HAS_HW_NRF_SWI0
|
|
select HAS_HW_NRF_SWI1
|
|
select HAS_HW_NRF_SWI2
|
|
select HAS_HW_NRF_SWI3
|
|
select HAS_HW_NRF_TEMP
|
|
select HAS_HW_NRF_TIMER0
|
|
select HAS_HW_NRF_TIMER1
|
|
select HAS_HW_NRF_TIMER2
|
|
select HAS_HW_NRF_TWIM0
|
|
select HAS_HW_NRF_TWIS0
|
|
select HAS_HW_NRF_UARTE0
|
|
select HAS_HW_NRF_WDT
|
|
select HAS_NO_PM
|
|
|
|
choice
|
|
prompt "nRF53x MCU Selection"
|
|
|
|
config SOC_NRF5340_CPUAPP_QKAA
|
|
bool "NRF5340_CPUAPP_QKAA"
|
|
select SOC_NRF5340_CPUAPP
|
|
|
|
config SOC_NRF5340_CPUNET_QKAA
|
|
bool "NRF5340_CPUNET_QKAA"
|
|
select SOC_NRF5340_CPUNET
|
|
|
|
endchoice
|
|
|
|
|
|
if SOC_NRF5340_CPUAPP
|
|
|
|
config SOC_DCDC_NRF53X_APP
|
|
bool
|
|
help
|
|
Enable nRF53 series System on Chip Application MCU DC/DC converter.
|
|
|
|
config SOC_DCDC_NRF53X_NET
|
|
bool
|
|
help
|
|
Enable nRF53 series System on Chip Network MCU DC/DC converter.
|
|
|
|
config SOC_DCDC_NRF53X_HV
|
|
bool
|
|
help
|
|
Enable nRF53 series System on Chip High Voltage DC/DC converter.
|
|
|
|
if !TRUSTED_EXECUTION_NONSECURE || BUILD_WITH_TFM
|
|
|
|
config SOC_ENABLE_LFXO
|
|
bool "LFXO"
|
|
default y
|
|
help
|
|
Enable the low-frequency oscillator (LFXO) functionality on XL1 and
|
|
XL2 pins.
|
|
This option must be enabled if either application or network core is
|
|
to use the LFXO. Otherwise, XL1 and XL2 pins will behave as regular
|
|
GPIOs.
|
|
|
|
choice SOC_LFXO_LOAD_CAPACITANCE
|
|
prompt "LFXO load capacitance"
|
|
depends on SOC_ENABLE_LFXO
|
|
default SOC_LFXO_CAP_INT_7PF
|
|
|
|
config SOC_LFXO_CAP_EXTERNAL
|
|
bool "Use external load capacitors"
|
|
|
|
config SOC_LFXO_CAP_INT_6PF
|
|
bool "6 pF internal load capacitance"
|
|
|
|
config SOC_LFXO_CAP_INT_7PF
|
|
bool "7 pF internal load capacitance"
|
|
|
|
config SOC_LFXO_CAP_INT_9PF
|
|
bool "9 pF internal load capacitance"
|
|
|
|
endchoice
|
|
|
|
choice SOC_HFXO_LOAD_CAPACITANCE
|
|
prompt "HFXO load capacitance"
|
|
default SOC_HFXO_CAP_DEFAULT
|
|
|
|
config SOC_HFXO_CAP_DEFAULT
|
|
bool "SoC default"
|
|
help
|
|
When this option is used, the SoC initialization routine does not
|
|
touch the XOSC32MCAPS register value, so the default setting for
|
|
the SoC is in effect. Please note that this may not necessarily be
|
|
the reset value (0) for the register, as the register can be set
|
|
during the device trimming in the SystemInit() function.
|
|
|
|
config SOC_HFXO_CAP_EXTERNAL
|
|
bool "Use external load capacitors"
|
|
|
|
config SOC_HFXO_CAP_INTERNAL
|
|
bool "Use internal load capacitors"
|
|
|
|
endchoice
|
|
|
|
config SOC_HFXO_CAP_INT_VALUE_X2
|
|
int "Doubled value of HFXO internal load capacitors (in pF)"
|
|
depends on SOC_HFXO_CAP_INTERNAL
|
|
range 14 40
|
|
help
|
|
Internal capacitors ranging from 7.0 pF to 20.0 pF in 0.5 pF steps
|
|
can be enabled on pins XC1 and XC2. This option specifies doubled
|
|
capacitance value for the two capacitors. Set it to 14 to get 7.0 pF
|
|
for each capacitor, 15 to get 7.5 pF, and so on.
|
|
|
|
endif # !TRUSTED_EXECUTION_NONSECURE || BUILD_WITH_TFM
|
|
|
|
endif # SOC_NRF5340_CPUAPP
|
|
|
|
|
|
config NRF_ENABLE_CACHE
|
|
bool "Cache"
|
|
depends on (SOC_NRF5340_CPUAPP && (!TRUSTED_EXECUTION_NONSECURE || BUILD_WITH_TFM)) \
|
|
|| SOC_NRF5340_CPUNET
|
|
default y
|
|
help
|
|
Instruction and Data cache is available on nRF5340 CPUAPP
|
|
(Application MCU). It may only be accessed by Secure code.
|
|
|
|
Instruction cache only (I-Cache) is available in nRF5340
|
|
CPUNET (Network MCU).
|
|
|
|
config BUILD_WITH_TFM
|
|
# TF-M nRF53 platform enables the cache unconditionally.
|
|
select NRF_ENABLE_CACHE if SOC_NRF5340_CPUAPP
|
|
|
|
config NRF53_SYNC_RTC
|
|
bool "RTC clock synchronization"
|
|
default y if LOG && !LOG_MODE_MINIMAL
|
|
depends on NRF_RTC_TIMER
|
|
select NRFX_DPPI
|
|
select MBOX if !IPM
|
|
|
|
if NRF53_SYNC_RTC
|
|
|
|
module = SYNC_RTC
|
|
module-str = Synchronized RTC
|
|
source "subsys/logging/Kconfig.template.log_config"
|
|
|
|
config NRF53_SYNC_RTC_INIT_PRIORITY
|
|
int "nRF53 Synchronized RTC init priority"
|
|
default APPLICATION_INIT_PRIORITY
|
|
help
|
|
nRF53 Synchronized RTC initialization priority.
|
|
|
|
config NRF_RTC_TIMER_USER_CHAN_COUNT
|
|
default 1
|
|
|
|
config NRF53_SYNC_RTC_LOG_TIMESTAMP
|
|
bool "Use Synchronized RTC for logging timestamp"
|
|
default y
|
|
|
|
config NRF53_SYNC_RTC_IPM_OUT
|
|
int "IPM channel from APP to NET"
|
|
range 0 15
|
|
default 7 if SOC_NRF5340_CPUAPP
|
|
default 8
|
|
|
|
config NRF53_SYNC_RTC_IPM_IN
|
|
int "IPM channel from APP to NET"
|
|
range 0 15
|
|
default 8 if SOC_NRF5340_CPUAPP
|
|
default 7
|
|
|
|
ipm_num = 0
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 1
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 2
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 3
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 4
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 5
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 6
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 7
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 8
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 9
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 10
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 11
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 12
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 13
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 14
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
ipm_num = 15
|
|
rsource "Kconfig.sync_rtc_ipm"
|
|
|
|
endif # NRF53_SYNC_RTC
|
|
endif # SOC_SERIES_NRF53X
|