diff --git a/boards/nordic/bm_nrf54l15dk/Kconfig.sysbuild b/boards/nordic/bm_nrf54l15dk/Kconfig.sysbuild index 92227764b2..fe89bff61c 100644 --- a/boards/nordic/bm_nrf54l15dk/Kconfig.sysbuild +++ b/boards/nordic/bm_nrf54l15dk/Kconfig.sysbuild @@ -7,6 +7,17 @@ config PARTITION_MANAGER default n +if BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE || \ + BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE || \ + BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE || \ + BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \ + BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \ + BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT + +choice SOFTDEVICE_SELECTION + default SOFTDEVICE_S115 +endchoice + if BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \ BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE_MCUBOOT || \ BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT @@ -15,10 +26,6 @@ choice BM_BOOTLOADER default BM_BOOTLOADER_MCUBOOT endchoice -choice SOFTDEVICE_SELECTION - default SOFTDEVICE_S115 -endchoice - choice BM_FIRMWARE_LOADER default BM_FIRMWARE_LOADER_BT_MCUMGR endchoice @@ -29,3 +36,10 @@ config BM_BOOTLOADER_MCUBOOT_FIRMWARE_LOADER_ENTRANCE_BOOT_MODE endif # BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE_MCUBOOT || # BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE_MCUBOOT || # BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT + +endif # BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE || + # BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE || + # BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE || + # BOARD_BM_NRF54L15DK_NRF54L05_CPUAPP_S115_SOFTDEVICE_MCUBOOT || + # BOARD_BM_NRF54L15DK_NRF54L10_CPUAPP_S115_SOFTDEVICE_MCUBOOT || + # BOARD_BM_NRF54L15DK_NRF54L15_CPUAPP_S115_SOFTDEVICE_MCUBOOT diff --git a/subsys/softdevice/Kconfig b/subsys/softdevice/Kconfig index d64b95b1a1..a7e4d329ac 100644 --- a/subsys/softdevice/Kconfig +++ b/subsys/softdevice/Kconfig @@ -24,7 +24,7 @@ config SOFTDEVICE_QOS_CHANNEL_SURVEY_REPORT if SOFTDEVICE config SOFTDEVICE_S115 - bool + bool "s115 SoftDevice" depends on SOC_SERIES_NRF54LX select SOFTDEVICE_PERIPHERAL select SOFTDEVICE_DATA_LENGTH_UPDATE diff --git a/sysbuild/CMakeLists.txt b/sysbuild/CMakeLists.txt index 3dd258ee97..63b46421a7 100644 --- a/sysbuild/CMakeLists.txt +++ b/sysbuild/CMakeLists.txt @@ -165,6 +165,25 @@ function(${SYSBUILD_CURRENT_MODULE_NAME}_pre_cmake) endif() endif() endforeach() + + if(SB_CONFIG_SOFTDEVICE_NONE) + set_config_bool(${DEFAULT_IMAGE} CONFIG_SOFTDEVICE n) + + if(NOT DEFINED SB_CONFIG_BM_BOOTLOADER_NONE AND NOT DEFINED SB_CONFIG_BM_FIRMWARE_LOADER_NONE) + set_config_bool(${SB_CONFIG_BM_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_SOFTDEVICE n) + endif() + else() + foreach(option SOFTDEVICE_S115) + if(SB_CONFIG_${option}) + set_config_bool(${DEFAULT_IMAGE} CONFIG_${option} y) + + if(NOT DEFINED SB_CONFIG_BM_BOOTLOADER_NONE AND NOT DEFINED SB_CONFIG_BM_FIRMWARE_LOADER_NONE AND NOT DEFINED SB_CONFIG_BM_FIRMWARE_LOADER_UART_MCUMGR) + set_config_bool(${SB_CONFIG_BM_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_${option} y) + endif() + break() + endif() + endforeach() + endif() endfunction() function(${SYSBUILD_CURRENT_MODULE_NAME}_post_cmake) @@ -174,12 +193,18 @@ function(${SYSBUILD_CURRENT_MODULE_NAME}_post_cmake) cmake_parse_arguments(PRE_CMAKE "" "" "IMAGES" ${ARGN}) - if(NOT SB_CONFIG_SOFTDEVICE_NONE) - set(check_targets mcuboot;installer;${SB_CONFIG_BM_FIRMWARE_LOADER_IMAGE_NAME};${DEFAULT_IMAGE}) + if(NOT DEFINED SB_CONFIG_BM_BOOTLOADER_NONE) + set(check_targets mcuboot;${DEFAULT_IMAGE}) set(dependency_targets ${SB_CONFIG_SOFTDEVICE_FILE}) - set(production_targets mcuboot;${SB_CONFIG_BM_FIRMWARE_LOADER_IMAGE_NAME};${DEFAULT_IMAGE}) + set(production_targets mcuboot;${DEFAULT_IMAGE}) set(production_files) + if(NOT DEFINED SB_CONFIG_BM_FIRMWARE_LOADER_NONE) + list(APPEND check_targets installer) + list(APPEND check_targets ${SB_CONFIG_BM_FIRMWARE_LOADER_IMAGE_NAME}) + list(APPEND production_targets ${SB_CONFIG_BM_FIRMWARE_LOADER_IMAGE_NAME}) + endif() + foreach(image ${check_targets}) sysbuild_get(${image}_kernel_bin_name IMAGE ${image} VAR CONFIG_KERNEL_BIN_NAME KCONFIG) sysbuild_get(${image}_binary_dir IMAGE ${image} VAR APPLICATION_BINARY_DIR CACHE)