Skip to content

Commit ee8e9cb

Browse files
treewide: add support for S145 SoftDevice
Add support for S145 SoftDevice. This adds the bm_nrf54l15dk board variants for S145 in addition to updating Kconfig etc. to use the new board variants. Signed-off-by: Eivind Jølsgard <[email protected]>
1 parent 3033a26 commit ee8e9cb

File tree

31 files changed

+1463
-18
lines changed

31 files changed

+1463
-18
lines changed

boards/nordic/bm_nrf54l15dk/Kconfig.bm_nrf54l15dk

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,15 @@
55
#
66

77
config BOARD_BM_NRF54L15DK
8-
select SOC_NRF54L05_CPUAPP if BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE || BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE_MCUBOOT
9-
select SOC_NRF54L10_CPUAPP if BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE || BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE_MCUBOOT
10-
select SOC_NRF54L15_CPUAPP if BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE || BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT
8+
select SOC_NRF54L05_CPUAPP if BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE || \
9+
BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \
10+
BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S145_SOFTDEVICE || \
11+
BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S145_SOFTDEVICE_MCUBOOT
12+
select SOC_NRF54L10_CPUAPP if BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE || \
13+
BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \
14+
BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S145_SOFTDEVICE || \
15+
BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S145_SOFTDEVICE_MCUBOOT
16+
select SOC_NRF54L15_CPUAPP if BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE || \
17+
BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \
18+
BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S145_SOFTDEVICE || \
19+
BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S145_SOFTDEVICE_MCUBOOT

boards/nordic/bm_nrf54l15dk/Kconfig.sysbuild

Lines changed: 34 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,38 @@ choice SOFTDEVICE_SELECTION
1818
default SOFTDEVICE_S115
1919
endchoice
2020

21+
endif # BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE || \
22+
# BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE || \
23+
# BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE || \
24+
# BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \
25+
# BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \
26+
# BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT
27+
28+
if BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S145_SOFTDEVICE || \
29+
BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S145_SOFTDEVICE || \
30+
BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S145_SOFTDEVICE || \
31+
BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S145_SOFTDEVICE_MCUBOOT || \
32+
BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S145_SOFTDEVICE_MCUBOOT || \
33+
BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S145_SOFTDEVICE_MCUBOOT
34+
35+
choice SOFTDEVICE_SELECTION
36+
default SOFTDEVICE_S145
37+
endchoice
38+
39+
endif # BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S145_SOFTDEVICE || \
40+
# BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S145_SOFTDEVICE || \
41+
# BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S145_SOFTDEVICE || \
42+
# BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S145_SOFTDEVICE_MCUBOOT || \
43+
# BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S145_SOFTDEVICE_MCUBOOT || \
44+
# BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S145_SOFTDEVICE_MCUBOOT
45+
46+
# Kconfigs for all MCUboot board variants
2147
if BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \
2248
BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \
23-
BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT
49+
BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \
50+
BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S145_SOFTDEVICE_MCUBOOT || \
51+
BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S145_SOFTDEVICE_MCUBOOT || \
52+
BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S145_SOFTDEVICE_MCUBOOT
2453

2554
choice BM_BOOTLOADER
2655
default BM_BOOTLOADER_MCUBOOT
@@ -35,11 +64,7 @@ config BM_BOOTLOADER_MCUBOOT_FIRMWARE_LOADER_ENTRANCE_BOOT_MODE
3564

3665
endif # BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE_MCUBOOT ||
3766
# BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE_MCUBOOT ||
38-
# BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT
39-
40-
endif # BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE ||
41-
# BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE ||
42-
# BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE ||
43-
# BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE_MCUBOOT ||
44-
# BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE_MCUBOOT ||
45-
# BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT
67+
# BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT ||
68+
# BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S145_SOFTDEVICE_MCUBOOT ||
69+
# BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S145_SOFTDEVICE_MCUBOOT ||
70+
# BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S145_SOFTDEVICE_MCUBOOT
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
/*
2+
* Copyright (c) 2025 Nordic Semiconductor ASA
3+
*
4+
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
*/
6+
7+
/dts-v1/;
8+
9+
#include <nordic/nrf54l05_cpuapp.dtsi>
10+
#include "bm_nrf54l15dk_nrf54l05_cpuapp_common.dtsi"
11+
12+
/ {
13+
chosen {
14+
zephyr,flash = &cpuapp_rram;
15+
zephyr,code-partition = &slot0_partition;
16+
zephyr,sram = &app_ram;
17+
};
18+
};
19+
20+
&cpuapp_rram {
21+
status = "okay";
22+
23+
partitions {
24+
compatible = "fixed-partitions";
25+
#address-cells = <1>;
26+
#size-cells = <1>;
27+
28+
slot0_partition: partition@0 {
29+
label = "slot0";
30+
reg = <0x00000000 DT_SIZE_K(347)>;
31+
};
32+
33+
storage_partition: partition@56c00 {
34+
compatible = "fixed-subpartitions";
35+
label = "storage";
36+
reg = <0x00056c00 DT_SIZE_K(8)>;
37+
ranges = <0x0 0x56c00 DT_SIZE_K(8)>;
38+
#address-cells = <1>;
39+
#size-cells = <1>;
40+
41+
peer_manager_partition: partition@0 {
42+
label = "peer_manager";
43+
reg = <0x00000000 DT_SIZE_K(4)>;
44+
};
45+
46+
storage0_partition: partition@1000 {
47+
label = "storage0";
48+
reg = <0x00001000 DT_SIZE_K(4)>;
49+
};
50+
};
51+
52+
softdevice_partition: partition@58c00 {
53+
label = "softdevice";
54+
reg = <0x00058c00 DT_SIZE_K(144)>;
55+
};
56+
};
57+
};
58+
59+
&cpuapp_sram {
60+
status = "okay";
61+
62+
partitions {
63+
#address-cells = <1>;
64+
#size-cells = <1>;
65+
66+
softdevice_static_ram: partition@20000080 {
67+
label = "softdevice_static_ram";
68+
reg = <0x20000080 0x1780>;
69+
};
70+
71+
softdevice_dynamic_ram: partition@20001800 {
72+
label = "softdevice_dynamic_ram";
73+
reg = <0x20001800 DT_SIZE_K(12)>;
74+
};
75+
76+
app_ram: partition@20004800 {
77+
label = "app_ram";
78+
reg = <0x20004800 DT_SIZE_K(77)>;
79+
};
80+
};
81+
};
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#
2+
# Copyright (c) 2025 Nordic Semiconductor
3+
#
4+
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
#
6+
7+
identifier: bm_nrf54l15dk/nrf54l05/cpuapp/s145_softdevice
8+
name: Bare_Metal-nRF54L15-DK-nRF54L05-Application-S145-SoftDevice
9+
type: mcu
10+
arch: arm
11+
toolchain:
12+
- gnuarmemb
13+
- xtools
14+
- zephyr
15+
sysbuild: true
16+
ram: 77
17+
flash: 347
Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
#
2+
# Copyright (c) 2025 Nordic Semiconductor
3+
#
4+
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
#
6+
7+
# Enable console
8+
CONFIG_CONSOLE=y
9+
CONFIG_BM_UARTE_CONSOLE=y
10+
11+
# Remove boot banner
12+
CONFIG_NCS_BOOT_BANNER=n
13+
CONFIG_BOOT_BANNER=n
14+
15+
# Enable MPU
16+
CONFIG_ARM_MPU=y
17+
18+
# Enable hardware stack protection
19+
CONFIG_HW_STACK_PROTECTION=y
20+
21+
# MPU-based null-pointer dereferencing detection cannot
22+
# be applied as the (0x0 - 0x400) is unmapped for this target.
23+
CONFIG_NULL_POINTER_EXCEPTION_DETECTION_NONE=y
24+
25+
# Enable Cache
26+
CONFIG_CACHE_MANAGEMENT=y
27+
CONFIG_EXTERNAL_CACHE=y
28+
29+
# Start SYSCOUNTER on driver init
30+
CONFIG_NRF_GRTC_START_SYSCOUNTER=y
31+
32+
# Disable partition manager
33+
CONFIG_PARTITION_MANAGER_ENABLED=n
34+
35+
# Disable multithreading
36+
CONFIG_MULTITHREADING=n
37+
CONFIG_ZERO_LATENCY_IRQS=y
38+
39+
# Allow FLASH writes
40+
CONFIG_MPU_ALLOW_FLASH_WRITE=y
41+
42+
# Shrink
43+
CONFIG_GPIO=n
44+
CONFIG_NRF_SECURITY=n
45+
46+
# Enable all NRFX drivers
47+
CONFIG_NRFX_CLOCK=y
48+
CONFIG_NRFX_CLOCK_LFXO_TWO_STAGE_ENABLED=y
49+
CONFIG_NRFX_COMP=y
50+
CONFIG_NRFX_DPPI00=y
51+
CONFIG_NRFX_DPPI10=y
52+
CONFIG_NRFX_DPPI20=y
53+
CONFIG_NRFX_DPPI30=y
54+
CONFIG_NRFX_EGU10=y
55+
CONFIG_NRFX_EGU20=y
56+
CONFIG_NRFX_GPIOTE20=y
57+
CONFIG_NRFX_GPIOTE30=y
58+
CONFIG_NRFX_GPPI=y
59+
CONFIG_NRFX_GRTC=y
60+
CONFIG_NRFX_I2S20=y
61+
CONFIG_NRFX_NFCT=y
62+
CONFIG_NRFX_PDM20=y
63+
CONFIG_NRFX_PDM21=y
64+
CONFIG_NRFX_POWER=y
65+
CONFIG_NRFX_PPIB00=y
66+
CONFIG_NRFX_PPIB01=y
67+
CONFIG_NRFX_PPIB10=y
68+
CONFIG_NRFX_PPIB11=y
69+
CONFIG_NRFX_PPIB20=y
70+
CONFIG_NRFX_PPIB21=y
71+
CONFIG_NRFX_PPIB22=y
72+
CONFIG_NRFX_PPIB30=y
73+
CONFIG_NRFX_PWM20=y
74+
CONFIG_NRFX_PWM21=y
75+
CONFIG_NRFX_PWM22=y
76+
CONFIG_NRFX_QDEC20=y
77+
CONFIG_NRFX_QDEC21=y
78+
CONFIG_NRFX_RRAMC=y
79+
CONFIG_NRFX_SAADC=y
80+
CONFIG_NRFX_SPIM00=y
81+
CONFIG_NRFX_SPIM20=y
82+
CONFIG_NRFX_SPIM21=y
83+
CONFIG_NRFX_SPIM22=y
84+
CONFIG_NRFX_SPIM30=y
85+
CONFIG_NRFX_SYSTICK=y
86+
CONFIG_NRFX_TEMP=y
87+
CONFIG_NRFX_TIMER00=y
88+
CONFIG_NRFX_TIMER10=y
89+
CONFIG_NRFX_TIMER20=y
90+
CONFIG_NRFX_TIMER21=y
91+
CONFIG_NRFX_TIMER22=y
92+
CONFIG_NRFX_TIMER23=y
93+
CONFIG_NRFX_TIMER24=y
94+
CONFIG_NRFX_TWIM20=y
95+
CONFIG_NRFX_TWIM21=y
96+
CONFIG_NRFX_TWIM22=y
97+
CONFIG_NRFX_TWIM30=y
98+
CONFIG_NRFX_UARTE00=y
99+
CONFIG_NRFX_UARTE20=y
100+
CONFIG_NRFX_UARTE21=y
101+
CONFIG_NRFX_UARTE22=y
102+
CONFIG_NRFX_UARTE30=y
103+
CONFIG_NRFX_WDT31=y
104+
CONFIG_NRFX_PRS_BOX_0=y
105+
CONFIG_NRFX_PRS_BOX_1=y
106+
CONFIG_NRFX_PRS_BOX_2=y
107+
CONFIG_NRFX_PRS_BOX_3=y
108+
CONFIG_NRFX_PRS_BOX_4=y

0 commit comments

Comments
 (0)