Problem with CONFIG_MCUBOOT_IMG_MANAGER

CONFIG_DFU_MULTI_IMAGE=y
CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_DFU_TARGET=y
CONFIG_NCS_MCUBOOT_IN_BUILD=y
CONFIG_MCUBOOT_IMG_MANAGER=y
CONFIG_MCUBOOT_BOOTUTIL_LIB=y

CONFIG_BT=y
CONFIG_BT_DEBUG_LOG=y
CONFIG_BT_SMP=y
CONFIG_BT_SIGNING=y
CONFIG_BT_PERIPHERAL=y
CONFIG_BT_DIS=n
CONFIG_BT_DIS_PNP=n
CONFIG_BT_BAS=n
CONFIG_BT_HRS=n
CONFIG_BT_NUS=n
CONFIG_BT_DEVICE_NAME="BT TEST DEV"
CONFIG_BT_DEVICE_APPEARANCE=0
CONFIG_BT_DEVICE_NAME_DYNAMIC=y
CONFIG_BT_DEVICE_NAME_MAX=65

CONFIG_HEAP_MEM_POOL_SIZE= 1024

CONFIG_BT_KEYS_OVERWRITE_OLDEST=y
CONFIG_BT_SETTINGS=n


# Drivers and peripherals
CONFIG_ADC=y
CONFIG_I2C=y
CONFIG_WATCHDOG=n
#CONFIG_PINMUX=n
CONFIG_PINCTRL=y
CONFIG_SPI=n
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_ASYNC_API=y


# Interrupts
CONFIG_DYNAMIC_INTERRUPTS=n
CONFIG_IRQ_OFFLOAD=n

# Memory protection
CONFIG_THREAD_CUSTOM_DATA=n
CONFIG_FPU=n

# Boot
CONFIG_BOOT_BANNER=n
CONFIG_BOOT_DELAY=0

# Console
# CONFIG_CONSOLE=n
CONFIG_STDOUT_CONSOLE=n
# CONFIG_PRINTK=n
CONFIG_EARLY_CONSOLE=n

# Build
CONFIG_SIZE_OPTIMIZATIONS=y

# ARM

# In order to correctly tune the stack sizes for the threads the following
# Configurations can enabled to print the current use:
CONFIG_THREAD_NAME=n
CONFIG_THREAD_ANALYZER=n
CONFIG_THREAD_ANALYZER_AUTO=n
CONFIG_THREAD_ANALYZER_RUN_UNLOCKED=n
CONFIG_THREAD_ANALYZER_USE_PRINTK=n
# CONFIG_THREAD_ANALYZER_AUTO_INTERVAL=20
CONFIG_CONSOLE=y
CONFIG_USE_SEGGER_RTT=y
CONFIG_RTT_CONSOLE=y
# CONFIG_SERIAL=n
CONFIG_PRINTK=y

# Example output of thread analyzer
# BT RX               : STACK: unused 576 usage 448 / 1024 (43 %); CPU: 0 %
# BT RX pri           : STACK: unused 260 usage 188 / 448 (41 %); CPU: 0 %
# BT ECC              : STACK: unused 256 usage 888 / 1144 (77 %); CPU: 1 %
# BT TX               : STACK: unused 296 usage 344 / 640 (53 %); CPU: 0 %
# thread_analyzer     : STACK: unused 128 usage 384 / 512 (75 %); CPU: 1 %
# sysworkq            : STACK: unused 856 usage 168 / 1024 (16 %); CPU: 0 %
# logging             : STACK: unused 232 usage 536 / 768 (69 %); CPU: 0 %
# idle 00             : STACK: unused 208 usage 48 / 256 (18 %); CPU: 97 %
# main                : STACK: unused 576 usage 448 / 1024 (43 %); CPU: 0 %
# CONFIG_BT_RX_STACK_SIZE=1024
# CONFIG_BT_CTLR_RX_PRIO_STACK_SIZE=448
# CONFIG_BT_HCI_TX_STACK_SIZE_WITH_PROMPT=y
# CONFIG_BT_HCI_TX_STACK_SIZE=640
# CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=512
# CONFIG_MPSL_WORK_STACK_SIZE=512
# CONFIG_IDLE_STACK_SIZE=128
# CONFIG_MAIN_STACK_SIZE=640
# CONFIG_ISR_STACK_SIZE=1024
# CONFIG_BT_NUS_THREAD_STACK_SIZE=512

# Disable features not needed
CONFIG_TIMESLICING=n
CONFIG_MINIMAL_LIBC_MALLOC=n
CONFIG_LOG=y
CONFIG_LOG_MODE_MINIMAL=y

# Disable Bluetooth features not needed
# CONFIG_BT_DEBUG_NONE=y
CONFIG_BT_ASSERT=n
CONFIG_BT_DATA_LEN_UPDATE=y
CONFIG_BT_PHY_UPDATE=n
CONFIG_BT_GATT_CACHING=n
CONFIG_BT_GATT_SERVICE_CHANGED=n
CONFIG_BT_GAP_PERIPHERAL_PREF_PARAMS=n
CONFIG_BT_SETTINGS_CCC_LAZY_LOADING=n
CONFIG_BT_HCI_VS_EXT=n

# Disable Bluetooth controller features not needed
CONFIG_BT_CTLR_PRIVACY=n
CONFIG_BT_CTLR_PHY_2M=n

# Reduce Bluetooth buffers
# CONFIG_BT_BUF_EVT_DISCARDABLE_COUNT=1
# CONFIG_BT_BUF_EVT_DISCARDABLE_SIZE=45
# CONFIG_BT_BUF_ACL_RX_COUNT=2
# CONFIG_BT_BUF_EVT_RX_COUNT=2

# CONFIG_BT_CONN_TX_MAX=2
# CONFIG_BT_L2CAP_TX_BUF_COUNT=2
# CONFIG_BT_CTLR_RX_BUFFERS=1
# CONFIG_BT_BUF_ACL_TX_COUNT=3
# CONFIG_BT_BUF_ACL_TX_SIZE=27


# Enable DK LED and Buttons library
CONFIG_DK_LIBRARY=y

# Power
CONFIG_BOARD_ENABLE_DCDC=y
CONFIG_PM=y
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y

# Enable bonding
CONFIG_FLASH=y
CONFIG_FLASH_PAGE_LAYOUT=y
CONFIG_FLASH_MAP=y
CONFIG_NVS=y
CONFIG_SETTINGS=y
CONFIG_REBOOT=y
CONFIG_MPU_ALLOW_FLASH_WRITE=y

# CONFIG_BT_SMP_SC_ONLY=y

CONFIG_IPC_SERVICE=n
CONFIG_BT_RPMSG=n
CONFIG_NRF_802154_SER_HOST=n
CONFIG_GPIO_AS_PINRESET=y
CONFIG_PINCTRL=y
CONFIG_BT_CTLR=y
CONFIG_BT_SMP_ALLOW_UNAUTH_OVERWRITE=y

CONFIG_BT_MAX_CONN=5
CONFIG_BT_MAX_PAIRED=5

CONFIG_I2C_LOG_LEVEL_OFF=y

CONFIG_ASSERT=n #For development only

CONFIG_BT_BONDABLE=n

CONFIG_HEAP_MEM_POOL_SIZE= 1024

CONFIG_HEAP_MEM_POOL_SIZE= 1024

I add the following line to my prj.conf file and get:

CONFIG_MCUBOOT_IMG_MANAGER =y
CONFIG_MCUBOOT_IMG_MANAGER was assigned the value y, but got the value n. Missing dependencies:
<choice>
And the linker doesn't find the function with
#include <zephyr/dfu/mcuboot.h>
and I get the following error:
undefined reference to `mcuboot_swap_type'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

Parents Reply Children
No Data
Related