Issue building NUS with UART on nRF5340 (APP_CORE)

Hello Nordic Support Team,

I am currently working with Distance Measurement (DM) and now need to implement the Nordic UART Service (NUS) on the nRF5340, using the application core (APP_CORE). My app is based on nRF5340DK board.

While integrating NUS, I attempted to use UART2, which is the only available UART instance in my setup, since I am already using SPI0, TWI1, SPI3, and SPI4. I also tried reconfiguring other peripherals to free up different UART instances, but the build still fails.

When I enable UART2, I encounter the following build error:


FAILED: zephyr/CMakeFiles/zephyr.dir/subsys/logging/backends/log_backend_uart.c.obj 
ccache /home/santos/ncs/toolchains/7cbc0036f4/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc -DKERNEL -DK_HEAP_MEM_POOL_SIZE=4096 -DMBEDTLS_CONFIG_FILE=\"nrf-config.h\" -DMBEDTLS_PSA_CRYPTO_CONFIG_FILE=\"nrf-psa-crypto-config.h\" -DMBEDTLS_PSA_CRYPTO_USER_CONFIG_FILE=\"nrf-psa-crypto-user-config.h\" -DNCS_APPLICATION_BOOT_BANNER_GIT_REPO -DNRF5340_XXAA_APPLICATION -DNRF_SKIP_FICR_NS_COPY_TO_RAM -DPICOLIBC_DOUBLE_PRINTF_SCANF -DUSE_PARTITION_MANAGER=1 -DZCBOR_ASSERTS -DZCBOR_STOP_ON_ERROR -D__LINUX_ERRNO_EXTENSIONS__ -D__PROGRAM_START -D__ZEPHYR__=1 -I/home/santos/ncs/v3.0.2/zephyr/kernel/include -I/home/santos/ncs/v3.0.2/zephyr/arch/arm/include -I/home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x/zephyr/include/generated/zephyr -I/home/santos/ncs/v3.0.2/zephyr/include -I/home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x/zephyr/include/generated -I/home/santos/ncs/v3.0.2/zephyr/soc/nordic -I/home/santos/ncs/v3.0.2/zephyr/soc/nordic/nrf53/. -I/home/santos/ncs/v3.0.2/zephyr/soc/nordic/common/. -I/home/santos/ncs/v3.0.2/zephyr/subsys/mgmt/mcumgr/util/include -I/home/santos/ncs/v3.0.2/bootloader/mcuboot/boot/bootutil/include -I/home/santos/ncs/v3.0.2/zephyr/subsys/mgmt/mcumgr/transport/include -I/home/santos/ncs/v3.0.2/bootloader/mcuboot/boot/zephyr/include -I/home/santos/ncs/v3.0.2/zephyr/subsys/bluetooth -I/home/santos/ncs/v3.0.2/zephyr/subsys/settings/include -I/home/santos/ncs/v3.0.2/nrf/include -I/home/santos/ncs/v3.0.2/nrf/subsys/nrf_rpc/include -I/home/santos/ncs/v3.0.2/nrf/subsys/settings/include -I/home/santos/ncs/v3.0.2/nrf/tests/include -I/home/santos/ncs/v3.0.2/modules/hal/cmsis/CMSIS/Core/Include -I/home/santos/ncs/v3.0.2/zephyr/modules/cmsis/. -I/home/santos/ncs/v3.0.2/modules/lib/cmsis-dsp/Include -I/home/santos/ncs/v3.0.2/nrf/modules/hal_nordic/. -I/home/santos/ncs/v3.0.2/modules/hal/nordic/nrfx -I/home/santos/ncs/v3.0.2/modules/hal/nordic/nrfx/drivers/include -I/home/santos/ncs/v3.0.2/modules/hal/nordic/nrfx/mdk -I/home/santos/ncs/v3.0.2/zephyr/modules/hal_nordic/nrfx/. -I/home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x/modules/libmetal/libmetal/lib/include -I/home/santos/ncs/v3.0.2/modules/lib/open-amp/open-amp/lib/include -I/home/santos/ncs/v3.0.2/modules/debug/segger/SEGGER -I/home/santos/ncs/v3.0.2/modules/debug/segger/Config -I/home/santos/ncs/v3.0.2/modules/lib/zcbor/include -I/home/santos/ncs/v3.0.2/nrfxlib/softdevice_controller/include -I/home/santos/ncs/v3.0.2/nrfxlib/nrf_rpc/include -I/home/santos/ncs/v3.0.2/nrfxlib/nrf_dm/include -I/home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x/generated/library_nrf_security_psa -I/home/santos/ncs/v3.0.2/nrf/subsys/nrf_security/include -I/home/santos/ncs/v3.0.2/modules/crypto/oberon-psa-crypto/oberon/drivers -I/home/santos/ncs/v3.0.2/nrf/subsys/nrf_security/src/utils -I/home/santos/ncs/v3.0.2/modules/crypto/oberon-psa-crypto/include -I/home/santos/ncs/v3.0.2/modules/crypto/oberon-psa-crypto/library -I/home/santos/ncs/v3.0.2/modules/crypto/mbedtls/library -I/home/santos/ncs/v3.0.2/modules/crypto/mbedtls/include -I/home/santos/ncs/v3.0.2/modules/crypto/mbedtls/include/library -I/home/santos/ncs/v3.0.2/nrfxlib/crypto/nrf_oberon/include -I/home/santos/ncs/v3.0.2/nrfxlib/crypto/nrf_oberon/include/mbedtls -I/home/santos/ncs/v3.0.2/bootloader/mcuboot/boot/bootutil/zephyr/.. -I/home/santos/ncs/v3.0.2/bootloader/mcuboot/boot/bootutil/zephyr/../include -I/home/santos/ncs/v3.0.2/bootloader/mcuboot/boot/bootutil/zephyr/../../zephyr/include -isystem /home/santos/ncs/v3.0.2/zephyr/lib/libc/common/include -isystem /home/santos/ncs/v3.0.2/nrfxlib/crypto/nrf_cc312_platform/include -fno-strict-aliasing -Og -imacros /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x/zephyr/include/generated/zephyr/autoconf.h -fno-common -g -gdwarf-4 -fdiagnostics-color=always -mcpu=cortex-m33 -mthumb -mabi=aapcs -mfpu=fpv5-sp-d16 -mfloat-abi=hard -mfp16-format=ieee -mtp=soft --sysroot=/home/santos/ncs/toolchains/7cbc0036f4/opt/zephyr-sdk/arm-zephyr-eabi/arm-zephyr-eabi -imacros /home/santos/ncs/v3.0.2/zephyr/include/zephyr/toolchain/zephyr_stdint.h -Wall -Wformat -Wformat-security -Wno-format-zero-length -Wdouble-promotion -Wno-pointer-sign -Wpointer-arith -Wexpansion-to-defined -Wno-unused-but-set-variable -Werror=implicit-int -fno-pic -fno-pie -fno-asynchronous-unwind-tables -ftls-model=local-exec -fno-reorder-functions --param=min-pagesize=0 -fno-defer-pop -fmacro-prefix-map=/home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x=CMAKE_SOURCE_DIR -fmacro-prefix-map=/home/santos/ncs/v3.0.2/zephyr=ZEPHYR_BASE -fmacro-prefix-map=/home/santos/ncs/v3.0.2=WEST_TOPDIR -ffunction-sections -fdata-sections -specs=picolibc.specs -std=c99 -MD -MT zephyr/CMakeFiles/zephyr.dir/subsys/logging/backends/log_backend_uart.c.obj -MF zephyr/CMakeFiles/zephyr.dir/subsys/logging/backends/log_backend_uart.c.obj.d -o zephyr/CMakeFiles/zephyr.dir/subsys/logging/backends/log_backend_uart.c.obj -c /home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c
In file included from /home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_macro.h:34,
                 from /home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util.h:17,
                 from /home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/cbprintf_internal.h:15,
                 from /home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/cbprintf.h:124,
                 from /home/santos/ncs/v3.0.2/zephyr/include/zephyr/logging/log_msg.h:11,
                 from /home/santos/ncs/v3.0.2/zephyr/include/zephyr/logging/log_backend.h:9,
                 from /home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:8:
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c: In function 'char_out':
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:96:41: error: '__device_dts_ord_148' undeclared (first use in this function); did you mean '__device_dts_ord_108'?
   96 | #define DEVICE_NAME_GET(dev_id) _CONCAT(__device_, dev_id)
      |                                         ^~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:72:26: note: in definition of macro '__DEBRACKET'
   72 | #define __DEBRACKET(...) __VA_ARGS__
      |                          ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:64:9: note: in expansion of macro '__GET_ARG2_DEBRACKET'
   64 |         __GET_ARG2_DEBRACKET(one_or_two_args _if_code, _else_code)
      |         ^~~~~~~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:59:9: note: in expansion of macro '__COND_CODE'
   59 |         __COND_CODE(_XXXX##_flag, _if_1_code, _else_code)
      |         ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_macro.h:196:9: note: in expansion of macro 'Z_COND_CODE_1'
  196 |         Z_COND_CODE_1(_flag, _if_1_code, _else_code)
      |         ^~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:38:9: note: in expansion of macro 'COND_CODE_1'
   38 |         COND_CODE_1(DT_HAS_CHOSEN(zephyr_log_uart), (ctx->uart_dev),                               \
      |         ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/toolchain/common.h:138:23: note: in expansion of macro '_DO_CONCAT'
  138 | #define _CONCAT(x, y) _DO_CONCAT(x, y)
      |                       ^~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:96:33: note: in expansion of macro '_CONCAT'
   96 | #define DEVICE_NAME_GET(dev_id) _CONCAT(__device_, dev_id)
      |                                 ^~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:237:37: note: in expansion of macro 'DEVICE_NAME_GET'
  237 | #define DEVICE_DT_NAME_GET(node_id) DEVICE_NAME_GET(Z_DEVICE_DT_DEV_ID(node_id))
      |                                     ^~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:254:34: note: in expansion of macro 'DEVICE_DT_NAME_GET'
  254 | #define DEVICE_DT_GET(node_id) (&DEVICE_DT_NAME_GET(node_id))
      |                                  ^~~~~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:39:22: note: in expansion of macro 'DEVICE_DT_GET'
   39 |                     (DEVICE_DT_GET(DT_CHOSEN(zephyr_console))))
      |                      ^~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:87:41: note: in expansion of macro 'LBU_UART_DEV'
   87 |         const struct device *uart_dev = LBU_UART_DEV(cb_ctx);
      |                                         ^~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:96:41: note: each undeclared identifier is reported only once for each function it appears in
   96 | #define DEVICE_NAME_GET(dev_id) _CONCAT(__device_, dev_id)
      |                                         ^~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:72:26: note: in definition of macro '__DEBRACKET'
   72 | #define __DEBRACKET(...) __VA_ARGS__
      |                          ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:64:9: note: in expansion of macro '__GET_ARG2_DEBRACKET'
   64 |         __GET_ARG2_DEBRACKET(one_or_two_args _if_code, _else_code)
      |         ^~~~~~~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:59:9: note: in expansion of macro '__COND_CODE'
   59 |         __COND_CODE(_XXXX##_flag, _if_1_code, _else_code)
      |         ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_macro.h:196:9: note: in expansion of macro 'Z_COND_CODE_1'
  196 |         Z_COND_CODE_1(_flag, _if_1_code, _else_code)
      |         ^~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:38:9: note: in expansion of macro 'COND_CODE_1'
   38 |         COND_CODE_1(DT_HAS_CHOSEN(zephyr_log_uart), (ctx->uart_dev),                               \
      |         ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/toolchain/common.h:138:23: note: in expansion of macro '_DO_CONCAT'
  138 | #define _CONCAT(x, y) _DO_CONCAT(x, y)
      |                       ^~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:96:33: note: in expansion of macro '_CONCAT'
   96 | #define DEVICE_NAME_GET(dev_id) _CONCAT(__device_, dev_id)
      |                                 ^~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:237:37: note: in expansion of macro 'DEVICE_NAME_GET'
  237 | #define DEVICE_DT_NAME_GET(node_id) DEVICE_NAME_GET(Z_DEVICE_DT_DEV_ID(node_id))
      |                                     ^~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:254:34: note: in expansion of macro 'DEVICE_DT_NAME_GET'
  254 | #define DEVICE_DT_GET(node_id) (&DEVICE_DT_NAME_GET(node_id))
      |                                  ^~~~~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:39:22: note: in expansion of macro 'DEVICE_DT_GET'
   39 |                     (DEVICE_DT_GET(DT_CHOSEN(zephyr_console))))
      |                      ^~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:87:41: note: in expansion of macro 'LBU_UART_DEV'
   87 |         const struct device *uart_dev = LBU_UART_DEV(cb_ctx);
      |                                         ^~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c: In function 'log_backend_uart_init':
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:96:41: error: '__device_dts_ord_148' undeclared (first use in this function); did you mean '__device_dts_ord_108'?
   96 | #define DEVICE_NAME_GET(dev_id) _CONCAT(__device_, dev_id)
      |                                         ^~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:72:26: note: in definition of macro '__DEBRACKET'
   72 | #define __DEBRACKET(...) __VA_ARGS__
      |                          ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:64:9: note: in expansion of macro '__GET_ARG2_DEBRACKET'
   64 |         __GET_ARG2_DEBRACKET(one_or_two_args _if_code, _else_code)
      |         ^~~~~~~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:59:9: note: in expansion of macro '__COND_CODE'
   59 |         __COND_CODE(_XXXX##_flag, _if_1_code, _else_code)
      |         ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_macro.h:196:9: note: in expansion of macro 'Z_COND_CODE_1'
  196 |         Z_COND_CODE_1(_flag, _if_1_code, _else_code)
      |         ^~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:38:9: note: in expansion of macro 'COND_CODE_1'
   38 |         COND_CODE_1(DT_HAS_CHOSEN(zephyr_log_uart), (ctx->uart_dev),                               \
      |         ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/toolchain/common.h:138:23: note: in expansion of macro '_DO_CONCAT'
  138 | #define _CONCAT(x, y) _DO_CONCAT(x, y)
      |                       ^~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:96:33: note: in expansion of macro '_CONCAT'
   96 | #define DEVICE_NAME_GET(dev_id) _CONCAT(__device_, dev_id)
      |                                 ^~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:237:37: note: in expansion of macro 'DEVICE_NAME_GET'
  237 | #define DEVICE_DT_NAME_GET(node_id) DEVICE_NAME_GET(Z_DEVICE_DT_DEV_ID(node_id))
      |                                     ^~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:254:34: note: in expansion of macro 'DEVICE_DT_NAME_GET'
  254 | #define DEVICE_DT_GET(node_id) (&DEVICE_DT_NAME_GET(node_id))
      |                                  ^~~~~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:39:22: note: in expansion of macro 'DEVICE_DT_GET'
   39 |                     (DEVICE_DT_GET(DT_CHOSEN(zephyr_console))))
      |                      ^~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:150:41: note: in expansion of macro 'LBU_UART_DEV'
  150 |         const struct device *uart_dev = LBU_UART_DEV(ctx);
      |                                         ^~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c: In function 'panic':
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:96:41: error: '__device_dts_ord_148' undeclared (first use in this function); did you mean '__device_dts_ord_108'?
   96 | #define DEVICE_NAME_GET(dev_id) _CONCAT(__device_, dev_id)
      |                                         ^~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:72:26: note: in definition of macro '__DEBRACKET'
   72 | #define __DEBRACKET(...) __VA_ARGS__
      |                          ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:64:9: note: in expansion of macro '__GET_ARG2_DEBRACKET'
   64 |         __GET_ARG2_DEBRACKET(one_or_two_args _if_code, _else_code)
      |         ^~~~~~~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_internal.h:59:9: note: in expansion of macro '__COND_CODE'
   59 |         __COND_CODE(_XXXX##_flag, _if_1_code, _else_code)
      |         ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/sys/util_macro.h:196:9: note: in expansion of macro 'Z_COND_CODE_1'
  196 |         Z_COND_CODE_1(_flag, _if_1_code, _else_code)
      |         ^~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:38:9: note: in expansion of macro 'COND_CODE_1'
   38 |         COND_CODE_1(DT_HAS_CHOSEN(zephyr_log_uart), (ctx->uart_dev),                               \
      |         ^~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/toolchain/common.h:138:23: note: in expansion of macro '_DO_CONCAT'
  138 | #define _CONCAT(x, y) _DO_CONCAT(x, y)
      |                       ^~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:96:33: note: in expansion of macro '_CONCAT'
   96 | #define DEVICE_NAME_GET(dev_id) _CONCAT(__device_, dev_id)
      |                                 ^~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:237:37: note: in expansion of macro 'DEVICE_NAME_GET'
  237 | #define DEVICE_DT_NAME_GET(node_id) DEVICE_NAME_GET(Z_DEVICE_DT_DEV_ID(node_id))
      |                                     ^~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:254:34: note: in expansion of macro 'DEVICE_DT_NAME_GET'
  254 | #define DEVICE_DT_GET(node_id) (&DEVICE_DT_NAME_GET(node_id))
      |                                  ^~~~~~~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:39:22: note: in expansion of macro 'DEVICE_DT_GET'
   39 |                     (DEVICE_DT_GET(DT_CHOSEN(zephyr_console))))
      |                      ^~~~~~~~~~~~~
/home/santos/ncs/v3.0.2/zephyr/subsys/logging/backends/log_backend_uart.c:188:41: note: in expansion of macro 'LBU_UART_DEV'
  188 |         const struct device *uart_dev = LBU_UART_DEV(ctx);
      |                                         ^~~~~~~~~~~~
[201/749] Building C object zephyr/lib/libc/picolibc/CMakeFiles/lib__libc__picolibc.dir/chk_fail.c.obj
ninja: build stopped: subcommand failed.
[15/30] No configure step for 'ipc_radio'
FAILED: _sysbuild/sysbuild/images/life_finder_nrfconn_3x-prefix/src/life_finder_nrfconn_3x-stamp/life_finder_nrfconn_3x-build /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/_sysbuild/sysbuild/images/life_finder_nrfconn_3x-prefix/src/life_finder_nrfconn_3x-stamp/life_finder_nrfconn_3x-build 
cd /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x && /home/santos/ncs/toolchains/7cbc0036f4/usr/local/bin/cmake --build .
ninja: build stopped: subcommand failed.
FATAL ERROR: command exited with status 1: /home/santos/ncs/toolchains/7cbc0036f4/usr/local/bin/cmake --build /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build


That my prj.conf:

# BT
CONFIG_BT=y
CONFIG_BT_CENTRAL=y
CONFIG_BT_PERIPHERAL=y
CONFIG_BT_SCAN=y
CONFIG_BT_SCAN_FILTER_ENABLE=y
CONFIG_BT_SCAN_NAME_CNT=1
CONFIG_BT_SCAN_MANUFACTURER_DATA_CNT=1
CONFIG_BT_SCAN_WITH_IDENTITY=y
CONFIG_BT_ID_MAX=1

CONFIG_BT_EXT_ADV=y

# Revolog Patio LR Anchor nRF5340
CONFIG_BT_DEVICE_NAME="LF_NRF"
CONFIG_BT_DDFS=y

CONFIG_BT_RX_STACK_SIZE=8192

CONFIG_MPSL=y
CONFIG_MPSL_TIMESLOT_SESSION_COUNT=1

# Distance Measurement
CONFIG_DM_MODULE=y
CONFIG_DM_TIMESLOT_RESCHEDULE=y

# Test
CONFIG_DM_TIMESLOT_QUEUE_LENGTH=80
CONFIG_DM_RANGING_OFFSET_US=2400000
# CONFIG_DM_TIMESLOT_QUEUE_COUNT_SAME_PEER=8
# CONFIG_DM_HIGH_PRECISION_CALC=y

CONFIG_DM_GPIO_DEBUG=n
CONFIG_DM_MODULE_LOG_LEVEL_DBG=n

# LOG and RTT
CONFIG_LOG=y
CONFIG_CONSOLE=y
CONFIG_RTT_CONSOLE=y
CONFIG_USE_SEGGER_RTT=y
CONFIG_LOG_BACKEND_RTT=y
CONFIG_LOG_MODE_IMMEDIATE=y
CONFIG_SEGGER_RTT_BUFFER_SIZE_UP=1024

# Debug options
CONFIG_ASSERT=y
CONFIG_ASSERT_VERBOSE=y
CONFIG_DEBUG=y
CONFIG_DEBUG_INFO=y
CONFIG_DEBUG_OPTIMIZATIONS=y
CONFIG_DEBUG_THREAD_INFO=y
CONFIG_DEBUG_COREDUMP=y
CONFIG_DEBUG_COREDUMP_BACKEND_LOGGING=y

# Init Stacks
CONFIG_INIT_STACKS=y

# Interrupts
CONFIG_DYNAMIC_INTERRUPTS=y

# Enable FOTA over Bluetooth LE
CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y

# Enable storage subsystem
CONFIG_FLASH=y
CONFIG_FLASH_MAP=y
CONFIG_NVS=y
CONFIG_FILE_SYSTEM=y

#NUS
# Enable the UART driver
CONFIG_UART_ASYNC_API=y
CONFIG_NRFX_UARTE2=y
# Enable the NUS service
CONFIG_BT_NUS=y

# Don't get entropy from HCI on nRF5340 devices
CONFIG_BT_HOST_CRYPTO_PRNG=y
CONFIG_ENTROPY_BT_HCI=n

CONFIG_HEAP_MEM_POOL_SIZE=2048
#END NUS

and my nrf5340dk_nrf5340_cpuapp.overlay:

#include <zephyr/dt-bindings/ipc_service/static_vrings.h>
#include <zephyr/dt-bindings/input/input-event-codes.h>
#include <zephyr/dt-bindings/mipi_dbi/mipi_dbi.h>

/ {
	chosen {
		/delete-property/ zephyr,ipc_shm;
		/delete-property/ nordic,pm-ext-flash;
		zephyr,sram = &sram0_image;
		zephyr,flash = &flash0;
		zephyr,code-partition = &slot0_partition;
		zephyr,sram-secure-partition = &sram0_s;
		zephyr,sram-non-secure-partition = &sram0_ns;
		zephyr,ieee802154 = &ieee802154;
		zephyr,display = &st7789v;
		zephyr,rtc = &rv_8263_c8;
		nordic,pm-ext-flash = &mx25r80;
		nordic,nus-uart = &uart2;
	};

	reserved-memory {
		/delete-node/ memory@20070000;

		sram_ipc0: memory@20070000 {
			reg = <0x20070000 0x8000>;
		};

		sram_ipc1: memory@20078000 {
			reg = <0x20078000 0x8000>;
		};
	};

	ipc {
		/delete-node/ ipc0;

		ipc0: ipc0 {
			compatible = "zephyr,ipc-openamp-static-vrings";
			memory-region = <&sram_ipc0>;
			mboxes = <&mbox 0>, <&mbox 1>;
			mbox-names = "tx", "rx";
			role = "host";
			status = "okay";

			bt_hci_ipc0: bt_hci_ipc0 {
				compatible = "zephyr,bt-hci-ipc";
				status = "okay";
			};
		};

		ipc1: ipc1 {
			compatible = "zephyr,ipc-openamp-static-vrings";
			memory-region = <&sram_ipc1>;
			mboxes = <&mbox 2>, <&mbox 3>;
			mbox-names = "tx", "rx";
			role = "host";
			zephyr,buffer-size = <2048>;
			status = "okay";
		};
	};

	buttons {
		/delete-node/ button0;
		/delete-node/ button1;
		/delete-node/ button2;
		/delete-node/ button3;
	};

	leds {
		/delete-node/ led0;
		/delete-node/ led1;
		/delete-node/ led2;
		/delete-node/ led3;
	};

	arduino_header: connector {
		status = "disabled";
	};

	gpio_fwd {
		status = "disabled";
	};

	aliases {
		imu                 = &bmi270;
		ipc0                = &ipc0;
		sx1280              = &sx1280;
		watchdog0           = &wdt0;
		/delete-property/ led0;
		/delete-property/ led1;
		/delete-property/ led2;
		/delete-property/ led3;
		/delete-property/ sw1;
		/delete-property/ sw2;
		/delete-property/ sw3;
		/delete-property/ bootloader-led0;
		/delete-property/ mcuboot-button0;
		/delete-property/ mcuboot-led0;
		/delete-property/ pwm-led0;
	};

	mipi_dbi_st7789v {
		compatible = "zephyr,mipi-dbi-spi";
		spi-dev = <&spi3>;
		dc-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>;
		reset-gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
		write-only;
		#address-cells = <1>;
		#size-cells = <0>;

		st7789v: st7789v@0 {
			compatible = "sitronix,st7789v";
			mipi-max-frequency = <8000000>;
			reg = <0>;
			width = <240>;
			height = <240>;
			x-offset = <80>;
			y-offset = <0>;
			vcom = <0x19>;
			gctrl = <0x35>;
			vrhs = <0x12>;
			vdvs = <0x20>;
			mdac = <0xA0>;
			gamma = <0x01>;
			colmod = <0x05>;
			lcm = <0x2c>;
			porch-param = [ 0c 0c 00 33 33  ];
			cmd2en-param = [ 5a 69 02 01  ];
			pwctrl1-param = [ a4 a1  ];
			pvgam-param = [ D0 04 0D 11 13 2B 3F 54 4C 18 0D 0B 1F 23  ];
			nvgam-param = [ D0 04 0C 11 13 2C 3F 44 51 2F 1F 1F 20 23  ];
			ram-param = [ 00 F0  ];
			rgb-param = [ CD 08 14  ];
			mipi-mode = "MIPI_DBI_MODE_SPI_4WIRE";
		};
	};

	pwmleds {
		compatible = "pwm-leds";

		/delete-node/ pwm_led0;

		backlight: backlight {
			pwms = <&pwm0 0 PWM_MSEC(50) PWM_POLARITY_NORMAL>;
		};

		motor: motor {
			pwms = <&pwm2 0 PWM_MSEC(50) PWM_POLARITY_NORMAL>;
			label = "motor";
		};

		buzzer: buzzer {
			pwms = <&pwm3 0 PWM_MSEC(50) PWM_POLARITY_NORMAL>;
			label = "buzzer";
		};
	};

	pins_io {
		compatible = "gpio-keys";
		key1: key1 {
			gpios = <&gpio0 31 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
			label = "key1";
			zephyr,code = <INPUT_KEY_0>;
		};

		en_motor: en_motor {
			gpios = <&gpio0 8 (GPIO_PULL_DOWN | GPIO_ACTIVE_HIGH)>;
			label = "en_motor";
			zephyr,code = <INPUT_KEY_0>;
		};
	};

	zephyr,user {
		io-channels = <&adc 5>;
		bq24040-gpios = <&gpio0 24 GPIO_ACTIVE_HIGH>;
		bmi270-int1-gpios = <&gpio1 0 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
		bmi270-int2-gpios = <&gpio0 11 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
	};

	arduino_adc: analog-connector {
		status = "disabled";
	};

	gpio_fwd: nrf-gpio-forwarder {
		status = "disabled";
		/delete-node/ uart;
	};
};

&adc {
	#address-cells = <1>;
	#size-cells = <0>;
	status = "okay";
	channel@5 {
		reg = <5>;
		zephyr,gain = "ADC_GAIN_1_2";
		zephyr,reference = "ADC_REF_INTERNAL";
		zephyr,acquisition-time = <ADC_ACQ_TIME_MAX>;
		zephyr,input-positive = <NRF_SAADC_AIN5>;
		zephyr,resolution = <12>;
	};
};

&mx25r64 {
	status = "disabled";
};

&uicr {
	nfct-pins-as-gpios;
};

&lfxo {
	status = "disabled";
};

&gpiote {
	status = "okay";
};

&gpio0 {
	status = "okay";
};

&gpio1 {
	status = "okay";
};

&rtc0 {
	status = "okay";
};

&qspi {
	status = "disabled";
};

&nfct {
	status = "disabled";
};

&uart0 {
	status = "disabled";
};

arduino_serial: &uart1 {
	status = "disabled";
};

arduino_i2c: &i2c1 {
	status = "disabled";
};

arduino_spi: &spi4 {
	status = "disabled";
};

&uart1 {
	status = "disabled";
};

&uart2 {
	status = "okay";
	current-speed = <115200>;
	pinctrl-0 = <&uart2_default>;
	pinctrl-1 = <&uart2_sleep>;
	pinctrl-names = "default", "sleep";
};

&spi4 {
	status = "disabled";
};

zephyr_udc0: &usbd {
	status = "disabled";
};

&pwm0 {
	status = "okay";
	pinctrl-0 = <&pwm0_backlight_default>;
	pinctrl-1 = <&pwm0_backlight_sleep>;
	pinctrl-names = "default", "sleep";
};

&pwm2 {
	status = "okay";
	pinctrl-0 = <&pwm2_motor_default>;
	pinctrl-1 = <&pwm2_motor_sleep>;
	pinctrl-names = "default", "sleep";
};

&pwm3 {
	status = "okay";
	pinctrl-0 = <&pwm3_buzzer_default>;
	pinctrl-1 = <&pwm3_buzzer_sleep>;
	pinctrl-names = "default", "sleep";
};

&spi0 {
	compatible = "nordic,nrf-spim";
	status = "okay";
	cs-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
	overrun-character = <0x00>;
	pinctrl-0 = <&spi0_sx128x_default>;
	pinctrl-1 = <&spi0_sx128x_sleep>;
	pinctrl-names = "default", "sleep";

	sx1280: sx1280@0 {
		compatible = "semtech,sx1262";
		status = "okay";
		reg = <0x0>;
		spi-max-frequency = <8000000>;
		reset-gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>;
		busy-gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>;
		dio1-gpios = <&gpio0 10 GPIO_ACTIVE_HIGH>;
	};
};

&spi3 {
	compatible = "nordic,nrf-spim";
	status = "okay";
	cs-gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
	pinctrl-0 = <&spi3_st7789v_default>;
	pinctrl-1 = <&spi3_st7789v_sleep>;
	pinctrl-names = "default", "sleep";
};

&qspi {
	status = "okay";
	pinctrl-0 = <&qspi_default>;
	pinctrl-1 = <&qspi_sleep>;
	pinctrl-names = "default", "sleep";
	mx25r80: mx25r8035f@0 {
		compatible = "nordic,qspi-nor";
		reg = <0>;
		/* MX25R80 supports only pp and pp4io */
		writeoc = "pp4io";
		/* MX25R80 supports all readoc options */
		readoc = "read4io";
		sck-frequency = <8000000>;
		size = <0x800000>;
		jedec-id = [c2 28 14];
		sfdp-bfp = [
			e5 20 f1 ff  ff ff 7f 00  44 eb 08 6b  08 3b 04 bb
			ee ff ff ff  ff ff 00 ff  ff ff 00 ff  0c 20 0f 52
			10 d8 00 ff  23 72 f5 00  82 ed 04 b7  44 83 38 44
			30 b0 30 b0  f7 c4 d5 5c  00 be 29 ff  f0 d0 ff ff
		];
		has-dpd;
		t-enter-dpd = <10000>;
		t-exit-dpd = <35000>;
	};
};

&i2c1 {
	status = "okay";
	compatible = "nordic,nrf-twim";
	clock-frequency = <I2C_BITRATE_STANDARD>;

	pinctrl-0 = <&i2c1_default>;
	pinctrl-1 = <&i2c1_sleep>;
	pinctrl-names = "default", "sleep";
	/* One-shot, contiguous transfers up to 257 bytes      */
	zephyr,concat-buf-size = <257>;
	rv_8263_c8: rv-8263-c8@51 {
		status = "okay";
		compatible = "microcrystal,rv-8263-c8";
		reg = <0x51>;
		label = "rv-8263-c8";
	};

	bmi270: bmi270@68 {
		status = "okay";
		compatible = "i2c-device";
		reg = <0x68>;
		label = "bmi270";
	};
};

&pinctrl {
	/delete-node/ pwm0_default;

	i2c1_default: i2c1_default {
		group1 {
			psels = <NRF_PSEL(TWIM_SDA, 1, 2)>,
					<NRF_PSEL(TWIM_SCL, 1, 3)>;
			bias-pull-up;
			nordic,drive-mode = <NRF_DRIVE_E0E1>;
		};
	};

	i2c1_sleep: i2c1_sleep {
		group1 {
			psels = <NRF_PSEL(TWIM_SDA, 1, 2)>,
					<NRF_PSEL(TWIM_SCL, 1, 3)>;
			low-power-enable;
		};
	};

	pwm0_backlight_default: pwm0_backlight_default {
		group1 {
			psels = <NRF_PSEL(PWM_OUT0, 0, 28)>;
			nordic,invert;
			bias-pull-down;
		};
	};

	pwm0_backlight_sleep: pwm0_backlight_sleep {
		group1 {
			psels = <NRF_PSEL(PWM_OUT0, 0, 28)>;
			low-power-enable;
		};
	};

	pwm2_motor_default: pwm2_motor_default {
		group1 {
			psels = <NRF_PSEL(PWM_OUT0, 0, 12)>;
			nordic,invert;
			bias-pull-down;
		};
	};

	pwm2_motor_sleep: pwm2_motor_sleep {
		group1 {
			psels = <NRF_PSEL(PWM_OUT0, 0, 12)>;
			low-power-enable;
		};
	};

	pwm3_buzzer_default: pwm3_buzzer_default {
		group1 {
			psels = <NRF_PSEL(PWM_OUT0, 0, 20)>;
			nordic,drive-mode = <NRF_DRIVE_H0H1>;
			nordic,invert;
			bias-pull-down;
		};
	};

	pwm3_buzzer_sleep: pwm3_buzzer_sleep {
		group1 {
			psels = <NRF_PSEL(PWM_OUT0, 0, 20)>;
			low-power-enable;
		};
	};

	spi0_sx128x_default: spi0_sx128x_default {
		group1 {
			psels = <NRF_PSEL(SPIM_SCK, 0, 22)>,
			        <NRF_PSEL(SPIM_MOSI, 0, 0)>,
			        <NRF_PSEL(SPIM_MISO, 0, 4)>;
			bias-pull-down;
		};
	};

	spi0_sx128x_sleep: spi0_sx128x_sleep {
		group1 {
			psels = <NRF_PSEL(SPIM_SCK, 0, 22)>,
			        <NRF_PSEL(SPIM_MOSI, 0, 0)>,
			        <NRF_PSEL(SPIM_MISO, 0, 4)>;
			low-power-enable;
		};
	};

	uart2_default: uart2_default {
		group1 {
			psels = <NRF_PSEL(UART_TX, 1, 12)>,
				<NRF_PSEL(UART_RTS, 1, 14)>;
		};
		group2 {
			psels = <NRF_PSEL(UART_RX, 1, 10)>,
				<NRF_PSEL(UART_CTS, 1, 7)>;
			bias-pull-up;
		};
	};

	uart2_sleep: uart2_sleep {
		group1 {
			psels = <NRF_PSEL(UART_TX, 1, 12)>,
				<NRF_PSEL(UART_RX, 1, 10)>,
				<NRF_PSEL(UART_RTS, 1, 14)>,
				<NRF_PSEL(UART_CTS, 1, 7)>;
			low-power-enable;
		};
	};

	spi3_st7789v_default: spi3_st7789v_default {
		group1 {
			psels = <NRF_PSEL(SPIM_SCK, 1, 13)>,
			        <NRF_PSEL(SPIM_MOSI, 0, 30)>,
			        <NRF_PSEL(SPIM_MISO, 1, 15)>; // no connected
					bias-pull-down;
		};
	};

	spi3_st7789v_sleep: spi3_st7789v_sleep {
		group1 {
			psels = <NRF_PSEL(SPIM_SCK, 1, 13)>,
			        <NRF_PSEL(SPIM_MOSI, 0, 30)>,
			        <NRF_PSEL(SPIM_MISO, 1, 15)>; // no connected
					low-power-enable;
		};
	};

	qspi_default: qspi_default {
		group1 {
			psels = <NRF_PSEL(QSPI_SCK, 0, 17)>,
					<NRF_PSEL(QSPI_IO0, 0, 13)>,
					<NRF_PSEL(QSPI_IO1, 0, 14)>,
					<NRF_PSEL(QSPI_IO2, 0, 15)>,
					<NRF_PSEL(QSPI_IO3, 0, 16)>,
					<NRF_PSEL(QSPI_CSN, 0, 18)>;
			nordic,drive-mode = <NRF_DRIVE_H0H1>;
		};
	};

	qspi_sleep: qspi_sleep {
		group1 {
			psels = <NRF_PSEL(QSPI_SCK, 0, 17)>,
					<NRF_PSEL(QSPI_IO0, 0, 13)>,
					<NRF_PSEL(QSPI_IO1, 0, 14)>,
					<NRF_PSEL(QSPI_IO2, 0, 15)>,
					<NRF_PSEL(QSPI_IO3, 0, 16)>;
			low-power-enable;
		};
		group2 {
			psels = <NRF_PSEL(QSPI_CSN, 0, 18)>;
			low-power-enable;
			bias-pull-up;
		};
	};
};

Could you please help me understand what might be causing this issue or if there are any limitations or configuration requirements when using NUS alongside DM on the nRF5340 APP_CORE?

Thank you in advance for your support.

Parents Reply
  • I need it specifically for the failed build.

    This is because I can check for this:

    "/home/santos/ncs/v3.0.2/zephyr/include/zephyr/device.h:96:41: error: '__device_dts_ord_148' undeclared (first use in this function); did you mean '__device_dts_ord_108'?"

    And specifically number 148 in your the generated devicetree file.

    However, the numbers change slightly when you remove the UART, so I need it as is in the failing case.

Children
  • Line 148 in this one points to uart0.

    Looks like you enable logging in your application, which will default to uart0. But then you disable uart0 in DTS.

    Do you want logging to be enabled?
    If so, which UART do you want to log to?

    When you said:

    When I enable UART2, I encounter the following build error:

    Exactly which changes did you make?

  •     "When I enable UART2, I encounter the following build error:"

    The only change I made was uncommenting this section:

    "
    &uart2 {
    status = "okay";
    current-speed = <115200>;
    pinctrl-0 = <&uart2_default>;
    pinctrl-1 = <&uart2_sleep>;
    pinctrl-names = "default", "sleep";
    };

    "

    With this section commented out, I don't get any errors. When uncommented, I get the errors shown previously.

    Regarding my logging configuration, I want to use RTT output. I'm currently using this in prj.conf:

    # LOG and RTT
    CONFIG_LOG=y
    CONFIG_CONSOLE=y
    CONFIG_RTT_CONSOLE=y
    CONFIG_USE_SEGGER_RTT=y
    CONFIG_LOG_BACKEND_RTT=y
    CONFIG_LOG_MODE_IMMEDIATE=y
    CONFIG_SEGGER_RTT_BUFFER_SIZE_UP=1024

    Following your suggestion, I added:

    CONFIG_UART_CONSOLE=n

    With this addition, I get a different error when uncommenting the UART2 lines. The error is:

    [744/747] Generating isr_tables.c, isr_tables_vt.ld, isr_tables_swi.ld
    FAILED: zephyr/isr_tables.c zephyr/isr_tables_vt.ld zephyr/isr_tables_swi.ld /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x/zephyr/isr_tables.c /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x/zephyr/isr_tables_vt.ld /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x/zephyr/isr_tables_swi.ld 
    cd /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x/zephyr && /home/santos/ncs/toolchains/7cbc0036f4/usr/local/bin/python /home/santos/ncs/v3.0.2/zephyr/scripts/build/gen_isr_tables.py --output-source isr_tables.c --linker-output-files isr_tables_vt.ld isr_tables_swi.ld --kernel /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x/zephyr/zephyr_pre0.elf --intlist-section .intList --intlist-section intList --sw-isr-table --vector-table
    gen_isr_tables.py: error: multiple registrations at table_index 11 for irq 11 (0xb)
    Existing handler 0x4a675, new handler 0x49b09
    Has IRQ_CONNECT or IRQ_DIRECT_CONNECT accidentally been invoked on the same irq multiple times?
    ninja: build stopped: subcommand failed.
    [19/30] cd /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/_sysbuild && /home/santos/ncs/toolchains/7cbc0036f4/usr/local/bin/cmake -E true
    FAILED: _sysbuild/sysbuild/images/life_finder_nrfconn_3x-prefix/src/life_finder_nrfconn_3x-stamp/life_finder_nrfconn_3x-build /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/_sysbuild/sysbuild/images/life_finder_nrfconn_3x-prefix/src/life_finder_nrfconn_3x-stamp/life_finder_nrfconn_3x-build 
    cd /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build/life_finder_nrfconn_3x && /home/santos/ncs/toolchains/7cbc0036f4/usr/local/bin/cmake --build .
    ninja: build stopped: subcommand failed.
    FATAL ERROR: command exited with status 1: /home/santos/ncs/toolchains/7cbc0036f4/usr/local/bin/cmake --build /home/santos/Documents/FirmwareLifeFinder/life_finder_nrfconn_3x/build



    with devicetree_generated.h:

    7266.devicetree_generated.h




  • Good, this new error message is one step closer.

    The IRQ number 11 is related to Peripheral instantiation. See that UART2 has number 11.

    So it points to the same that Veal is suggesting as welll.

    Could you also upload build/PROJECT/zephyr/zephyr.dts? Then I can check all peripherals that is enabled in the final compiled DTS configuration.

Related