kconfig: soc: adopt Nordic SoC series to support hw model v2 scheme
This commit adopts hw model v2 to nRF SoC family. This ensures that when hw model v2 is used for an nRF51, nRF52, nRF53, and nRF91 SoC series, so that all SoC selections are handled internally by Kconfig, and no selection / re-configuration is possible by end-user or through configuration files. Hw model v2 requires the SoC to be self-contained, that is no references are allowed out-side the SoC Kconfig tree. All Zephyr Kconfig specifics are therefore sourced into the Zephyr Kconfig tree through Kconfig.zephyr and Kconfig.zephyr.defconfig. Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
This commit is contained in:
committed by
Carles Cufi
parent
3584b30fc1
commit
c79f1b0d94
@@ -4,6 +4,9 @@ zephyr_library()
|
||||
|
||||
add_subdirectory(${SOC_SERIES})
|
||||
add_subdirectory(common)
|
||||
zephyr_include_directories(${SOC_SERIES})
|
||||
|
||||
set(SOC_LINKER_SCRIPT ${ZEPHYR_BASE}/include/zephyr/arch/arm/cortex_m/scripts/linker.ld CACHE INTERNAL "SoC Linker script")
|
||||
|
||||
zephyr_library_sources(
|
||||
validate_base_addresses.c
|
||||
@@ -3,10 +3,14 @@
|
||||
# Copyright (c) 2016-2018 Nordic Semiconductor ASA
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
# This file is contains Zephyr build system Kconfig references and is not
|
||||
# re-usable outside the Zephyr tree.
|
||||
|
||||
config SOC_FAMILY_NRF
|
||||
select SOC_COMPATIBLE_NRF
|
||||
select PLATFORM_SPECIFIC_INIT
|
||||
bool
|
||||
|
||||
rsource "*/Kconfig.series"
|
||||
|
||||
if SOC_FAMILY_NRF
|
||||
config SOC_FAMILY
|
||||
@@ -14,7 +18,7 @@ config SOC_FAMILY
|
||||
default "nordic_nrf"
|
||||
|
||||
source "soc/common/nordic_nrf/Kconfig.peripherals"
|
||||
source "soc/soc_legacy/arm/nordic_nrf/*/Kconfig.soc"
|
||||
rsource "*/Kconfig.soc"
|
||||
|
||||
config NRF_SOC_SECURE_SUPPORTED
|
||||
def_bool !TRUSTED_EXECUTION_NONSECURE || (BUILD_WITH_TFM && TFM_PARTITION_PLATFORM)
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
if SOC_FAMILY_NRF
|
||||
|
||||
source "soc/soc_legacy/arm/nordic_nrf/*/Kconfig.defconfig.series"
|
||||
rsource "*/Kconfig.defconfig.series"
|
||||
|
||||
# If the kernel has timer support, enable clock control
|
||||
if SYS_CLOCK_EXISTS
|
||||
47
soc/nordic_nrf/Kconfig.soc
Normal file
47
soc/nordic_nrf/Kconfig.soc
Normal file
@@ -0,0 +1,47 @@
|
||||
# Copyright (c) 2022 Nordic Semiconductor ASA
|
||||
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
# This file contains Zephyr hw modul v2 Kconfig description for
|
||||
# Nordic Semiconductor SoCs.
|
||||
# The hw model v2 is generic and contains no Kconfig references outside its own
|
||||
# tree structure and is therefore reusable in Kconfig trees outside a Zephyr build.
|
||||
|
||||
config SOC_SERIES
|
||||
default "nrf51" if SOC_SERIES_NRF51X
|
||||
default "nrf52" if SOC_SERIES_NRF52X
|
||||
default "nrf53" if SOC_SERIES_NRF53X
|
||||
default "nrf91" if SOC_SERIES_NRF91X
|
||||
|
||||
config SOC_FAMILY_NRF
|
||||
bool
|
||||
|
||||
config SOC_FAMILY
|
||||
string
|
||||
default "nordic_nrf"
|
||||
depends on SOC_FAMILY_NRF
|
||||
|
||||
config SOC_SERIES_NRF51X
|
||||
bool
|
||||
help
|
||||
Enable support for NRF51 MCU series
|
||||
|
||||
config SOC_SERIES_NRF52X
|
||||
bool
|
||||
select SOC_FAMILY_NRF
|
||||
help
|
||||
Enable support for NRF52 MCU series
|
||||
|
||||
config SOC_SERIES_NRF53X
|
||||
bool
|
||||
select SOC_FAMILY_NRF
|
||||
help
|
||||
Enable support for NRF53 MCU series
|
||||
|
||||
config SOC_SERIES_NRF91X
|
||||
bool
|
||||
select SOC_FAMILY_NRF
|
||||
help
|
||||
Enable support for NRF91 MCU series
|
||||
|
||||
rsource "*/Kconfig.soc"
|
||||
@@ -6,11 +6,6 @@
|
||||
|
||||
if SOC_SERIES_NRF51X
|
||||
|
||||
source "soc/soc_legacy/arm/nordic_nrf/nrf51/Kconfig.defconfig.nrf51*"
|
||||
|
||||
config SOC_SERIES
|
||||
default "nrf51"
|
||||
|
||||
config NUM_IRQS
|
||||
default 26
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC_SERIES_NRF51X
|
||||
bool "Nordic Semiconductor nRF51 series MCU"
|
||||
select ARM
|
||||
select CPU_CORTEX_M0
|
||||
select SOC_FAMILY_NRF
|
||||
28
soc/nordic_nrf/nrf51/Kconfig.soc
Normal file
28
soc/nordic_nrf/nrf51/Kconfig.soc
Normal file
@@ -0,0 +1,28 @@
|
||||
# Nordic Semiconductor nRF51 MCU line
|
||||
|
||||
# Copyright (c) 2016 Linaro Limited
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC_NRF51822_QFAA
|
||||
bool
|
||||
select SOC_SERIES_NRF51X
|
||||
|
||||
config SOC_NRF51822_QFAB
|
||||
bool
|
||||
select SOC_SERIES_NRF51X
|
||||
|
||||
config SOC_NRF51822_QFAC
|
||||
bool
|
||||
select SOC_SERIES_NRF51X
|
||||
|
||||
config SOC
|
||||
default "nRF51822_QFAA"
|
||||
depends on SOC_NRF51822_QFAA
|
||||
|
||||
config SOC
|
||||
default "nRF51822_QFAB"
|
||||
depends on SOC_NRF51822_QFAB
|
||||
|
||||
config SOC
|
||||
default "nRF51822_QFAC"
|
||||
depends on SOC_NRF51822_QFAC
|
||||
@@ -1,87 +1,23 @@
|
||||
# Nordic Semiconductor nRF52 MCU line
|
||||
|
||||
# Copyright (c) 2016-2019 Nordic Semiconductor ASA
|
||||
# Copyright (c) 2016-2023 Nordic Semiconductor ASA
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
if SOC_SERIES_NRF52X
|
||||
|
||||
config SOC_NRF52805
|
||||
bool
|
||||
|
||||
config SOC_NRF52810
|
||||
bool
|
||||
|
||||
config SOC_NRF52811
|
||||
bool
|
||||
|
||||
config SOC_NRF52820
|
||||
bool
|
||||
|
||||
config SOC_NRF52832
|
||||
bool
|
||||
select CPU_CORTEX_M_HAS_DWT
|
||||
select CPU_HAS_FPU
|
||||
|
||||
config SOC_NRF52833
|
||||
bool
|
||||
select SOC_COMPATIBLE_NRF52833
|
||||
select CPU_CORTEX_M_HAS_DWT
|
||||
select CPU_HAS_FPU
|
||||
|
||||
config SOC_NRF52840
|
||||
bool
|
||||
select CPU_CORTEX_M_HAS_DWT
|
||||
select CPU_HAS_FPU
|
||||
|
||||
choice
|
||||
prompt "nRF52x MCU Selection"
|
||||
|
||||
config SOC_NRF52805_CAAA
|
||||
bool "NRF52805_CAAA"
|
||||
select SOC_NRF52805
|
||||
|
||||
config SOC_NRF52810_QFAA
|
||||
bool "NRF52810_QFAA"
|
||||
select SOC_NRF52810
|
||||
|
||||
config SOC_NRF52811_QFAA
|
||||
bool "NRF52811_QFAA"
|
||||
select SOC_NRF52811
|
||||
|
||||
config SOC_NRF52820_QDAA
|
||||
bool "NRF52820_QDAA"
|
||||
select SOC_NRF52820
|
||||
|
||||
config SOC_NRF52832_CIAA
|
||||
bool "NRF52832_CIAA"
|
||||
select SOC_NRF52832
|
||||
|
||||
config SOC_NRF52832_QFAA
|
||||
bool "NRF52832_QFAA"
|
||||
select SOC_NRF52832
|
||||
|
||||
config SOC_NRF52832_QFAB
|
||||
bool "NRF52832_QFAB"
|
||||
select SOC_NRF52832
|
||||
|
||||
config SOC_NRF52833_QDAA
|
||||
bool "NRF52833_QDAA"
|
||||
select SOC_NRF52833
|
||||
|
||||
config SOC_NRF52833_QIAA
|
||||
bool "NRF52833_QIAA"
|
||||
select SOC_NRF52833
|
||||
|
||||
config SOC_NRF52840_QFAA
|
||||
bool "NRF52840_QFAA"
|
||||
select SOC_NRF52840
|
||||
|
||||
config SOC_NRF52840_QIAA
|
||||
bool "NRF52840_QIAA"
|
||||
select SOC_NRF52840
|
||||
|
||||
endchoice
|
||||
|
||||
config SOC_DCDC_NRF52X
|
||||
bool
|
||||
help
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF52805_CAAA
|
||||
|
||||
config SOC
|
||||
default "nRF52805_CAAA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 26
|
||||
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF52810_QFAA
|
||||
|
||||
config SOC
|
||||
default "nRF52810_QFAA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 30
|
||||
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF52811_QFAA
|
||||
|
||||
config SOC
|
||||
default "nRF52811_QFAA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 30
|
||||
|
||||
@@ -5,10 +5,6 @@
|
||||
|
||||
if SOC_NRF52820_QDAA
|
||||
|
||||
config SOC
|
||||
string
|
||||
default "nRF52820_QDAA"
|
||||
|
||||
config NUM_IRQS
|
||||
int
|
||||
default 40
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF52832_CIAA
|
||||
|
||||
config SOC
|
||||
default "nRF52832_CIAA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 39
|
||||
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF52832_QFAA
|
||||
|
||||
config SOC
|
||||
default "nRF52832_QFAA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 39
|
||||
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF52832_QFAB
|
||||
|
||||
config SOC
|
||||
default "nRF52832_QFAB"
|
||||
|
||||
config NUM_IRQS
|
||||
default 39
|
||||
|
||||
@@ -5,10 +5,6 @@
|
||||
|
||||
if SOC_NRF52833_QIAA
|
||||
|
||||
config SOC
|
||||
string
|
||||
default "nRF52833_QIAA"
|
||||
|
||||
config NUM_IRQS
|
||||
int
|
||||
default 48
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF52840_QIAA
|
||||
|
||||
config SOC
|
||||
default "nRF52840_QIAA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 48
|
||||
|
||||
@@ -5,10 +5,7 @@
|
||||
|
||||
if SOC_SERIES_NRF52X
|
||||
|
||||
source "soc/soc_legacy/arm/nordic_nrf/nrf52/Kconfig.defconfig.nrf52*"
|
||||
|
||||
config SOC_SERIES
|
||||
default "nrf52"
|
||||
rsource "Kconfig.defconfig.nrf52*"
|
||||
|
||||
# If the kernel has timer support, enable the timer
|
||||
config NRF_RTC_TIMER
|
||||
@@ -4,7 +4,6 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC_SERIES_NRF52X
|
||||
bool "Nordic Semiconductor nRF52 series MCU"
|
||||
select ARM
|
||||
select SOC_COMPATIBLE_NRF52X
|
||||
select CPU_CORTEX_M4
|
||||
105
soc/nordic_nrf/nrf52/Kconfig.soc
Normal file
105
soc/nordic_nrf/nrf52/Kconfig.soc
Normal file
@@ -0,0 +1,105 @@
|
||||
# Nordic Semiconductor nRF52 MCU line, Zephyr hw model v2 compliant
|
||||
|
||||
# Copyright (c) 2022-2023 Nordic Semiconductor ASA
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC_NRF52805
|
||||
bool
|
||||
select SOC_SERIES_NRF52X
|
||||
|
||||
config SOC_NRF52810
|
||||
bool
|
||||
select SOC_SERIES_NRF52X
|
||||
|
||||
config SOC_NRF52811
|
||||
bool
|
||||
select SOC_SERIES_NRF52X
|
||||
|
||||
config SOC_NRF52820
|
||||
bool
|
||||
select SOC_SERIES_NRF52X
|
||||
|
||||
config SOC_NRF52832
|
||||
bool
|
||||
select SOC_SERIES_NRF52X
|
||||
|
||||
config SOC_NRF52833
|
||||
bool
|
||||
select SOC_SERIES_NRF52X
|
||||
|
||||
config SOC_NRF52840
|
||||
bool
|
||||
select SOC_SERIES_NRF52X
|
||||
|
||||
config SOC_NRF52805_CAAA
|
||||
bool
|
||||
select SOC_NRF52805
|
||||
|
||||
config SOC_NRF52810_QFAA
|
||||
bool
|
||||
select SOC_NRF52810
|
||||
|
||||
config SOC_NRF52811_QFAA
|
||||
bool
|
||||
select SOC_NRF52811
|
||||
|
||||
config SOC_NRF52820_QDAA
|
||||
bool
|
||||
select SOC_NRF52820
|
||||
|
||||
config SOC_NRF52832_CIAA
|
||||
bool
|
||||
select SOC_NRF52832
|
||||
|
||||
config SOC_NRF52832_QFAA
|
||||
bool
|
||||
select SOC_NRF52832
|
||||
|
||||
config SOC_NRF52832_QFAB
|
||||
bool
|
||||
select SOC_NRF52832
|
||||
|
||||
config SOC_NRF52833_QIAA
|
||||
bool
|
||||
select SOC_NRF52833
|
||||
|
||||
config SOC_NRF52840_QIAA
|
||||
bool
|
||||
select SOC_NRF52840
|
||||
|
||||
config SOC
|
||||
default "nRF52805_CAAA"
|
||||
depends on SOC_NRF52805_CAAA
|
||||
|
||||
config SOC
|
||||
default "nRF52840_QIAA"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config SOC
|
||||
default "nRF52810_QFAA"
|
||||
depends on SOC_NRF52810_QFAA
|
||||
|
||||
config SOC
|
||||
default "nRF52811_QFAA"
|
||||
depends on SOC_NRF52811_QFAA
|
||||
|
||||
config SOC
|
||||
string
|
||||
default "nRF52820_QDAA"
|
||||
depends on SOC_NRF52820_QDAA
|
||||
|
||||
config SOC
|
||||
default "nRF52832_CIAA"
|
||||
depends on SOC_NRF52832_CIAA
|
||||
|
||||
config SOC
|
||||
default "nRF52832_QFAA"
|
||||
depends on SOC_NRF52832_QFAA
|
||||
|
||||
config SOC
|
||||
default "nRF52832_QFAB"
|
||||
depends on SOC_NRF52832_QFAB
|
||||
|
||||
config SOC
|
||||
default "nRF52833_QIAA"
|
||||
depends on SOC_NRF52833_QIAA
|
||||
@@ -4,8 +4,8 @@
|
||||
# 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
|
||||
@@ -15,25 +15,12 @@ config SOC_NRF5340_CPUAPP
|
||||
imply SOC_NRF53_ANOMALY_168_WORKAROUND
|
||||
|
||||
config SOC_NRF5340_CPUNET
|
||||
bool
|
||||
select ARM_ON_EXIT_CPU_IDLE
|
||||
select SOC_COMPATIBLE_NRF5340_CPUNET
|
||||
imply SOC_NRF53_ANOMALY_160_WORKAROUND_NEEDED
|
||||
imply SOC_NRF53_RTC_PRETICK if !WDT_NRFX
|
||||
imply SOC_NRF53_ANOMALY_168_WORKAROUND
|
||||
|
||||
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
|
||||
|
||||
config SOC_NRF53_ANOMALY_160_WORKAROUND_NEEDED
|
||||
bool "Workaround for nRF5340 anomaly 160"
|
||||
imply SOC_NRF53_ANOMALY_160_WORKAROUND
|
||||
@@ -52,6 +39,25 @@ config SOC_NRF53_ANOMALY_160_WORKAROUND
|
||||
depends on SYS_CLOCK_EXISTS
|
||||
select ARM_ON_ENTER_CPU_IDLE_HOOK
|
||||
|
||||
config SOC_NRF53_ANOMALY_168_WORKAROUND
|
||||
bool "Workaround for nRF5340 anomaly 168"
|
||||
select ARM_ON_EXIT_CPU_IDLE
|
||||
help
|
||||
Indicates that the workaround for the anomaly 168 that affects
|
||||
the nRF5340 SoC should be applied.
|
||||
The workaround involves execution of 8 NOP instructions when the CPU
|
||||
exist its idle state (when the WFI/WFE instruction returns) and it is
|
||||
enabled by default for both the application and network core.
|
||||
|
||||
config SOC_NRF53_ANOMALY_168_WORKAROUND_FOR_EXECUTION_FROM_RAM
|
||||
bool "Extend the workaround to execution at 128 MHz from RAM"
|
||||
depends on SOC_NRF53_ANOMALY_168_WORKAROUND && SOC_NRF5340_CPUAPP
|
||||
help
|
||||
Indicates that the anomaly 168 workaround is to be extended to cover
|
||||
also a specific case when the WFI/WFE instruction is executed at 128
|
||||
MHz from RAM. Then, 26 instead of 8 NOP instructions needs to be
|
||||
executed after WFI/WFE. This extension is not enabled by default.
|
||||
|
||||
config SOC_NRF53_RTC_PRETICK
|
||||
bool "Pre-tick workaround for nRF5340 anomaly 165"
|
||||
depends on (SYS_CLOCK_EXISTS && SOC_NRF5340_CPUNET) || SOC_NRF5340_CPUAPP
|
||||
@@ -80,25 +86,6 @@ config SOC_NRF53_RTC_PRETICK_IPC_CH_TO_NET
|
||||
|
||||
endif
|
||||
|
||||
config SOC_NRF53_ANOMALY_168_WORKAROUND
|
||||
bool "Workaround for nRF5340 anomaly 168"
|
||||
select ARM_ON_EXIT_CPU_IDLE
|
||||
help
|
||||
Indicates that the workaround for the anomaly 168 that affects
|
||||
the nRF5340 SoC should be applied.
|
||||
The workaround involves execution of 8 NOP instructions when the CPU
|
||||
exist its idle state (when the WFI/WFE instruction returns) and it is
|
||||
enabled by default for both the application and network core.
|
||||
|
||||
config SOC_NRF53_ANOMALY_168_WORKAROUND_FOR_EXECUTION_FROM_RAM
|
||||
bool "Extend the workaround to execution at 128 MHz from RAM"
|
||||
depends on SOC_NRF53_ANOMALY_168_WORKAROUND && SOC_NRF5340_CPUAPP
|
||||
help
|
||||
Indicates that the anomaly 168 workaround is to be extended to cover
|
||||
also a specific case when the WFI/WFE instruction is executed at 128
|
||||
MHz from RAM. Then, 26 instead of 8 NOP instructions needs to be
|
||||
executed after WFI/WFE. This extension is not enabled by default.
|
||||
|
||||
if SOC_NRF5340_CPUAPP
|
||||
|
||||
config SOC_DCDC_NRF53X_APP
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF5340_CPUAPP_QKAA
|
||||
|
||||
config SOC
|
||||
default "nRF5340_CPUAPP_QKAA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 69
|
||||
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF5340_CPUNET_QKAA
|
||||
|
||||
config SOC
|
||||
default "nRF5340_CPUNET_QKAA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 30
|
||||
|
||||
@@ -5,10 +5,7 @@
|
||||
|
||||
if SOC_SERIES_NRF53X
|
||||
|
||||
source "soc/soc_legacy/arm/nordic_nrf/nrf53/Kconfig.defconfig.nrf53*"
|
||||
|
||||
config SOC_SERIES
|
||||
default "nrf53"
|
||||
rsource "Kconfig.defconfig.nrf53*"
|
||||
|
||||
# If the kernel has timer support, enable the timer
|
||||
config NRF_RTC_TIMER
|
||||
@@ -4,7 +4,7 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC_SERIES_NRF53X
|
||||
bool "Nordic Semiconductor nRF53 series MCU"
|
||||
bool "Nordic Semiconductor nRF53 series MCU" if "$(SOC_SCHEME)" = "v1"
|
||||
select ARM
|
||||
select SOC_COMPATIBLE_NRF53X
|
||||
select CPU_CORTEX_M33
|
||||
28
soc/nordic_nrf/nrf53/Kconfig.soc
Normal file
28
soc/nordic_nrf/nrf53/Kconfig.soc
Normal file
@@ -0,0 +1,28 @@
|
||||
# Nordic Semiconductor nRF52 MCU line, Zephyr hw model v2 compliant
|
||||
|
||||
# Copyright (c) 2023 Nordic Semiconductor ASA
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC_NRF5340_CPUAPP
|
||||
bool
|
||||
select SOC_SERIES_NRF53X
|
||||
|
||||
config SOC_NRF5340_CPUNET
|
||||
bool
|
||||
select SOC_SERIES_NRF53X
|
||||
|
||||
config SOC_NRF5340_CPUAPP_QKAA
|
||||
bool
|
||||
select SOC_NRF5340_CPUAPP
|
||||
|
||||
config SOC_NRF5340_CPUNET_QKAA
|
||||
bool
|
||||
select SOC_NRF5340_CPUNET
|
||||
|
||||
config SOC
|
||||
default "nRF5340_CPUAPP_QKAA"
|
||||
depends on SOC_NRF5340_CPUAPP_QKAA
|
||||
|
||||
config SOC
|
||||
default "nRF5340_CPUNET_QKAA"
|
||||
depends on SOC_NRF5340_CPUNET_QKAA
|
||||
12
soc/nordic_nrf/nrf91/Kconfig
Normal file
12
soc/nordic_nrf/nrf91/Kconfig
Normal file
@@ -0,0 +1,12 @@
|
||||
# Nordic Semiconductor nRF91 MCU line
|
||||
|
||||
# Copyright (c) 2018 Nordic Semiconductor ASA
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
if SOC_SERIES_NRF91X
|
||||
|
||||
config NRF_ENABLE_ICACHE
|
||||
bool "Instruction cache (I-Cache)"
|
||||
default y
|
||||
|
||||
endif # SOC_SERIES_NRF91X
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF9131_LACA
|
||||
|
||||
config SOC
|
||||
default "nRF9131_LACA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 65
|
||||
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF9160_SICA
|
||||
|
||||
config SOC
|
||||
default "nRF9160_SICA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 65
|
||||
|
||||
@@ -5,9 +5,6 @@
|
||||
|
||||
if SOC_NRF9161_LACA
|
||||
|
||||
config SOC
|
||||
default "nRF9161_LACA"
|
||||
|
||||
config NUM_IRQS
|
||||
default 65
|
||||
|
||||
@@ -5,10 +5,7 @@
|
||||
|
||||
if SOC_SERIES_NRF91X
|
||||
|
||||
source "soc/soc_legacy/arm/nordic_nrf/nrf91/Kconfig.defconfig.nrf91*"
|
||||
|
||||
config SOC_SERIES
|
||||
default "nrf91"
|
||||
rsource "Kconfig.defconfig.nrf91*"
|
||||
|
||||
# If the kernel has timer support, enable the timer
|
||||
config NRF_RTC_TIMER
|
||||
@@ -4,7 +4,6 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC_SERIES_NRF91X
|
||||
bool "Nordic Semiconductor nRF91 series MCU"
|
||||
select ARM
|
||||
select CPU_CORTEX_M33
|
||||
select CPU_CORTEX_M_HAS_DWT
|
||||
@@ -32,4 +31,8 @@ config NRF_SPU_RAM_REGION_SIZE
|
||||
default 0x2000
|
||||
help
|
||||
RAM region size for the NRF_SPU peripheral
|
||||
|
||||
config NRF_ENABLE_ICACHE
|
||||
bool "Instruction cache (I-Cache)"
|
||||
default y
|
||||
endif
|
||||
@@ -3,19 +3,16 @@
|
||||
# Copyright (c) 2018 Nordic Semiconductor ASA
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
if SOC_SERIES_NRF91X
|
||||
|
||||
config SOC_NRF9120
|
||||
bool
|
||||
select SOC_SERIES_NRF91X
|
||||
|
||||
config SOC_NRF9160
|
||||
bool
|
||||
|
||||
choice
|
||||
prompt "nRF91x MCU Selection"
|
||||
select SOC_SERIES_NRF91X
|
||||
|
||||
config SOC_NRF9160_SICA
|
||||
bool "NRF9160_SICA"
|
||||
bool
|
||||
select SOC_NRF9160
|
||||
|
||||
# The nRF9161 is technically a SiP (System-in-Package) that consists of
|
||||
@@ -27,21 +24,25 @@ config SOC_NRF9160_SICA
|
||||
# options in Kconfig, for example) the nRF9161 term is used and nRF9120
|
||||
# underneath.
|
||||
config SOC_NRF9161_LACA
|
||||
bool "NRF9161_LACA"
|
||||
bool
|
||||
select SOC_NRF9120
|
||||
|
||||
config SOC_NRF9131_LACA
|
||||
bool "NRF9131_LACA"
|
||||
bool
|
||||
select SOC_NRF9120
|
||||
|
||||
config SOC_NRF9151_LACA
|
||||
bool "NRF9151_LACA"
|
||||
bool
|
||||
select SOC_NRF9120
|
||||
|
||||
endchoice
|
||||
config SOC
|
||||
default "nRF9131_LACA"
|
||||
depends on SOC_NRF9131_LACA
|
||||
|
||||
config NRF_ENABLE_ICACHE
|
||||
bool "Instruction cache (I-Cache)"
|
||||
default y
|
||||
config SOC
|
||||
default "nRF9160_SICA"
|
||||
depends on SOC_NRF9160_SICA
|
||||
|
||||
endif # SOC_SERIES_NRF91X
|
||||
config SOC
|
||||
default "nRF9161_LACA"
|
||||
depends on SOC_NRF9161_LACA
|
||||
27
soc/nordic_nrf/soc.yml
Normal file
27
soc/nordic_nrf/soc.yml
Normal file
@@ -0,0 +1,27 @@
|
||||
family:
|
||||
- name: nordic_nrf
|
||||
series:
|
||||
- name: nrf51
|
||||
socs:
|
||||
- name: nrf51422
|
||||
- name: nrf51822
|
||||
- name: nrf52
|
||||
socs:
|
||||
- name: nrf52805
|
||||
- name: nrf52810
|
||||
- name: nrf52811
|
||||
- name: nrf52820
|
||||
- name: nrf52832
|
||||
- name: nrf52833
|
||||
- name: nrf52840
|
||||
- name: nrf53
|
||||
socs:
|
||||
- name: nrf5340
|
||||
cpuclusters:
|
||||
- name: cpuapp
|
||||
- name: cpunet
|
||||
- name: nrf91
|
||||
socs:
|
||||
- name: nrf9160
|
||||
- name: nrf9161
|
||||
- name: nrf9131
|
||||
@@ -1,6 +0,0 @@
|
||||
# Nordic Semiconductor nRFx MCU line
|
||||
|
||||
# Copyright (c) 2016-2018 Nordic Semiconductor ASA
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
source "soc/soc_legacy/arm/nordic_nrf/*/Kconfig.series"
|
||||
@@ -1,9 +0,0 @@
|
||||
# Nordic Semiconductor nRF51822 MCU
|
||||
|
||||
# Copyright (c) 2016 Linaro Limited
|
||||
# Copyright (c) 2016 Nordic Semiconductor ASA
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC
|
||||
default "nRF51822_QFAA"
|
||||
depends on SOC_NRF51822_QFAA
|
||||
@@ -1,9 +0,0 @@
|
||||
# Nordic Semiconductor nRF51822 MCU
|
||||
|
||||
# Copyright (c) 2016 Linaro Limited
|
||||
# Copyright (c) 2016 Nordic Semiconductor ASA
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC
|
||||
default "nRF51822_QFAB"
|
||||
depends on SOC_NRF51822_QFAB
|
||||
@@ -1,9 +0,0 @@
|
||||
# Nordic Semiconductor nRF51822 MCU
|
||||
|
||||
# Copyright (c) 2016 Linaro Limited
|
||||
# Copyright (c) 2016 Nordic Semiconductor ASA
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC
|
||||
default "nRF51822_QFAC"
|
||||
depends on SOC_NRF51822_QFAC
|
||||
@@ -1,19 +0,0 @@
|
||||
# Nordic Semiconductor nRF51 MCU line
|
||||
|
||||
# Copyright (c) 2016 Linaro Limited
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
choice
|
||||
prompt "nRF51x MCU Selection"
|
||||
depends on SOC_SERIES_NRF51X
|
||||
|
||||
config SOC_NRF51822_QFAA
|
||||
bool "NRF51822_QFAA"
|
||||
|
||||
config SOC_NRF51822_QFAB
|
||||
bool "NRF51822_QFAB"
|
||||
|
||||
config SOC_NRF51822_QFAC
|
||||
bool "NRF51822_QFAC"
|
||||
|
||||
endchoice
|
||||
@@ -1,8 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2023 TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
*/
|
||||
|
||||
#include <zephyr/arch/arm/cortex_m/scripts/linker.ld>
|
||||
Reference in New Issue
Block a user