Connect SDK: check_init_priorities.py: ValueError: ERROR: device 56 (/soc/spi@40003000) already defined

Hi

When building (or to be precise, after building the binary) my project with a custom board i get:

Traceback (most recent call last):
File "/home/bearsh/projects/nrf-msr175+/external/zephyr/scripts/build/check_init_priorities.py", line 361, in <module>
sys.exit(main(sys.argv[1:]))
File "/home/bearsh/projects/nrf-msr175+/external/zephyr/scripts/build/check_init_priorities.py", line 346, in main
validator = Validator(args.build_dir, args.edt_pickle, log)
File "/home/bearsh/projects/nrf-msr175+/external/zephyr/scripts/build/check_init_priorities.py", line 217, in __init__
raise ValueError(
ValueError: ERROR: device 56 (/soc/spi@40003000) already defined
ninja: build stopped: subcommand failed.
FATAL ERROR: command exited with status 1: /home/bearsh/ncs/toolchains/7795df4459/usr/local/bin/cmake --build /home/bearsh/projects/nrf-msr175+/application/build

my boards dts looks like:

// Copyright (c) 2024 Nordic Semiconductor ASA
// SPDX-License-Identifier: Apache-2.0

/dts-v1/;
#include <nordic/nrf52840_qiaa.dtsi>
#include "nina-b3_msr-a11-pinctrl.dtsi"

/ {
model = "ninaB3-msrA11";
compatible = "nordic,nina-b3-msr-a11", "nordic,nrf52840-qiaa", "nordic,nrf52840";

chosen {
//zephyr,uart-mcumgr = &uart0;
zephyr,sram = &sram0;
zephyr,flash = &flash0;
zephyr,code-partition = &slot0_partition;
zephyr,ieee802154 = &ieee802154;
};

gpios {
compatible = "gpio-leds";
msp_isr: msp_isr {
gpios = <&gpio0 21 GPIO_ACTIVE_HIGH>;
label = "Interrupt from msp";
};
};

aliases {
msp-isr = &msp_isr;
};
};

&uicr {
gpio-as-nreset;
};

&gpio0 {
status = "okay";
};

&uart0 {
compatible = "nordic,nrf-uarte";
status = "okay";
current-speed = <115200>;
pinctrl-0 = <&uart0_default>;
pinctrl-1 = <&uart0_sleep>;
pinctrl-names = "default", "sleep";
/delete-property/ hw-flow-control;

lpuart: nrf-sw-lpuart {
compatible = "nordic,nrf-sw-lpuart";
status = "okay";
req-pin = <14>;
rdy-pin = <13>;
};
};

spi_slave: &spi0 {
compatible = "nordic,nrf-spis";
// Cannot be used together with i2c0.
status = "okay";
cs-gpios = <&gpio0 19 GPIO_ACTIVE_LOW>;
pinctrl-0 = <&spi0_default>;
pinctrl-1 = <&spi0_sleep>;
pinctrl-names = "default", "sleep";
def-char = <0>;
};

&ieee802154 {
status = "okay";
};

&flash0 {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;

boot_partition: partition@0 {
label = "mcuboot";
reg = <0x0 0xc000>;
};
slot0_partition: partition@c000 {
label = "image-0";
reg = <0xc000 0x72000>;
};
slot1_partition: partition@7e000 {
label = "image-1";
reg = <0x7e000 0x72000>;
};
scratch_partition: partition@f0000 {
label = "image-scratch";
reg = <0xf0000 0xa000>;
};
storage_partition: partition@fa000 {
label = "storage";
reg = <0xfa000 0x6000>;
};
};
};

My application need to act as an spi slave
  • I forgot to mention the use versions:

    west list
    manifest application HEAD N/A
    sdk-nrf external/nrf v2.5.2 github.com/.../sdk-nrf
    zephyr external/zephyr v3.4.99-ncs1-2 github.com/.../sdk-zephyr
    hostap external/modules/lib/hostap eb6119524273f65f64a7710fbd876c829094a216 github.com/.../sdk-hostap
    wfa-qt-control-app external/modules/lib/wfa-qt-control-app 0e213ab6a421298484a81a9d18f5c31c4b8084a8 github.com/.../sdk-wi-fiquicktrack-controlappc
    mcuboot external/bootloader/mcuboot v1.10.99-ncs1-2 github.com/.../sdk-mcuboot
    qcbor external/modules/tee/tf-m/qcbor 751d36583a9ce1a640900c57e13c9b6b8f3a2ba2 github.com/.../QCBOR.git
    mbedtls external/modules/crypto/mbedtls v3.3.0-ncs2-2 github.com/.../sdk-mbedtls
    nrfxlib external/nrfxlib v2.5.2 github.com/.../sdk-nrfxlib
    trusted-firmware-m external/modules/tee/tf-m/trusted-firmware-m v1.8.0-ncs1-2 github.com/.../sdk-trusted-firmware-m
    matter external/modules/lib/matter v2.5.2 github.com/.../sdk-connectedhomeip
    cjson external/modules/lib/cjson c6af068b7f05207b28d68880740e4b9ec1e4b50a github.com/.../sdk-cjson
    azure-sdk-for-c external/modules/lib/azure-sdk-for-c 308c171cb4b5eed266649012a68406487ec81fb2 github.com/.../azure-sdk-for-c
    cirrus external/modules/hal/cirrus-logic 9f6b3812237fbb0d4157ba3584c13f1644fcbe3a github.com/.../sdk-mcu-drivers
    openthread external/modules/lib/openthread 57ef721eeed2550835c528ab7b8e77671f7039d6 github.com/.../sdk-openthread
    cmock external/test/cmock f65066f15d8248e6dcb778efb8739904a4512087 github.com/.../cmock
    memfault-firmware-sdk external/modules/lib/memfault-firmware-sdk 1.3.3 github.com/.../memfault-firmware-sdk
    bsim external/tools/bsim 384a091445c57b44ac8cbd18ebd245b47c71db94 github.com/.../bsim_west
    canopennode external/modules/lib/canopennode dec12fa3f0d790cafa8414a4c2930ea71ab72ffd github.com/.../canopennode
    chre external/modules/lib/chre b7955c27e50485b7dafdc3888d7d6afdc2ac6d96 github.com/.../chre
    cmsis external/modules/hal/cmsis 1abf29132e608826752e2edd1f4799a065db4031 github.com/.../cmsis
    edtt external/tools/edtt 64e5105ad82390164fb73fc654be3f73a608209a github.com/.../edtt
    fatfs external/modules/fs/fatfs 427159bf95ea49b7680facffaa29ad506b42709b github.com/.../fatfs
    hal_nordic external/modules/hal/nordic 9784731461018d3e983604698fbbed6af2bea801 github.com/.../sdk-hal_nordic
    hal_st external/modules/hal/st 9b128caf3e7b2e750169b880e83f210ea2213473 github.com/.../hal_st
    hal_wurthelektronik external/modules/hal/wurthelektronik 24ca9873c3d608fad1fea0431836bc8f144c132e github.com/.../hal_wurthelektronik
    libmetal external/modules/hal/libmetal b91611a6f47dd29fb24c46e5621e797557f80ec6 github.com/.../libmetal
    liblc3 external/modules/lib/liblc3 448f3de31f49a838988a162ef1e23a89ddf2d2ed github.com/.../liblc3
    littlefs external/modules/fs/littlefs ca583fd297ceb48bced3c2548600dc615d67af24 github.com/.../littlefs
    loramac-node external/modules/lib/loramac-node 3029c9f304bf46a6e5205f3c8455dbc23108efec github.com/.../loramac-node
    lvgl external/modules/lib/gui/lvgl 8a6a2d1d29d17d1e4bdc94c243c146a39d635fdd github.com/.../lvgl
    lz4 external/modules/lib/lz4 8e303c264fc21c2116dc612658003a22e933124d github.com/.../lz4
    mipi-sys-t external/modules/debug/mipi-sys-t a819419603a2dfcb47f7f39092e1bc112e45d1ef github.com/.../mipi-sys-t
    nanopb external/modules/lib/nanopb 42fa8b211e946b90b9d968523fce7b1cfe27617e github.com/.../nanopb
    net-tools external/tools/net-tools e0828aa9629b533644dc96ff6d1295c939bd713c github.com/.../net-tools
    nrf_hw_models external/modules/bsim_hw_models/nrf_hw_models 57b61a9a2da75c860f15ca79522b24d57992df2c github.com/.../nrf_hw_models
    open-amp external/modules/lib/open-amp 42b7c577714b8f22ce82a901e19c1814af4609a8 github.com/.../open-amp
    picolibc external/modules/lib/picolibc d07c38ff051386f8e09a143ea0a6c1d6d66dd1d8 github.com/.../picolibc
    segger external/modules/debug/segger 9d0191285956cef43daf411edc2f1a7788346def github.com/.../segger
    tinycrypt external/modules/crypto/tinycrypt 3e9a49d2672ec01435ffbf0d788db6d95ef28de0 github.com/.../tinycrypt
    TraceRecorderSource external/modules/debug/TraceRecorder 1ede7ce8e7ab226e9a84d95266241ba3f38d91d2 github.com/.../TraceRecorderSource
    tf-m-tests external/modules/tee/tf-m/tf-m-tests a878426da78fbd1486dfc29d6c6b82be4ee79e72 github.com/.../tf-m-tests
    psa-arch-tests external/modules/tee/tf-m/psa-arch-tests 6a17330e0dfb5f319730f974d5b05f7b7f04757b github.com/.../psa-arch-tests
    uoscore-uedhoc external/modules/lib/uoscore-uedhoc 5fe2cb613bd7e4590bd1b00c2adf181ac0229379 github.com/.../uoscore-uedhoc
    zcbor external/modules/lib/zcbor 67fd8bb88d3136738661fa8bb5f9989103f4599e github.com/.../zcbor
    zscilib external/modules/lib/zscilib 34c3432e81085bb717e4871d21ca419ae0058ec5 github.com/.../zscilib

  • Hi,

    Can you zip up and upload the full board files? 

    Do you have any overlay files in your project that is included?

    Please also post the full build log output. The error indicates that spi0 node is defined more than once.

    Best regards,
    Jørgen

  • 5226.board.zip

    [1/197] Preparing syscall dependency handling
    
    [2/197] Generating ../../zephyr/include/generated/ncs_version.h
    [3/197] Generating include/generated/version.h
    -- Zephyr version: 3.4.99 (/home/bearsh/projects/nrf-msr175+/external/zephyr), build: v3.4.99-ncs1-2
    [4/197] Generating misc/generated/syscalls_subdirs.trigger
    [5/197] Generating misc/generated/syscalls.json, misc/generated/struct_tags.json
    [6/197] Generating include/generated/syscall_dispatch.c, include/generated/syscall_list.h
    [7/197] Generating include/generated/driver-validation.h
    [8/197] Generating include/generated/kobj-types-enum.h, include/generated/otype-to-str.h, include/generated/otype-to-size.h
    [9/197] Building C object zephyr/CMakeFiles/offsets.dir/arch/arm/core/offsets/offsets.c.obj
    [10/197] Generating include/generated/offsets.h
    [11/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/hex.c.obj
    [12/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/dec.c.obj
    [13/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/timeutil.c.obj
    [14/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/sem.c.obj
    [15/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/cbprintf_packaged.c.obj
    [16/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/fdtable.c.obj
    [17/197] Building C object zephyr/CMakeFiles/zephyr.dir/misc/generated/configs.c.obj
    [18/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/printk.c.obj
    [19/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/heap-validate.c.obj
    [20/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/multi_heap.c.obj
    [21/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/rb.c.obj
    [22/197] Building C object CMakeFiles/app.dir/src/ble_srv.c.obj
    ../src/ble_srv.c:17:31: warning: 'tx_buffer_ccc_cfg' defined but not used [-Wunused-variable]
       17 | static struct bt_gatt_ccc_cfg tx_buffer_ccc_cfg[BT_GATT_CCC_MAX] = {};
          |                               ^~~~~~~~~~~~~~~~~
    [23/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/heap.c.obj
    [24/197] Building C object CMakeFiles/app.dir/src/main.c.obj
    ../src/main.c:78:13: warning: 'auth_passkey_display' defined but not used [-Wunused-function]
       78 | static void auth_passkey_display(struct bt_conn *conn, unsigned int passkey)
          |             ^~~~~~~~~~~~~~~~~~~~
    [25/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/thread_entry.c.obj
    [26/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/notify.c.obj
    [27/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/assert.c.obj
    [28/197] Building ASM object zephyr/CMakeFiles/zephyr.dir/soc/arm/nordic_nrf/common/soc_nrf_common.S.obj
    [29/197] Building C object zephyr/CMakeFiles/zephyr.dir/home/bearsh/projects/nrf-msr175+/external/modules/crypto/tinycrypt/lib/source/utils.c.obj
    [30/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/bitarray.c.obj
    [31/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/reboot.c.obj
    [32/197] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/tracing/tracing_none.c.obj
    [33/197] Building C object zephyr/CMakeFiles/zephyr.dir/home/bearsh/projects/nrf-msr175+/external/modules/crypto/tinycrypt/lib/source/aes_decrypt.c.obj
    [34/197] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/net/lib/utils/addr_utils.c.obj
    [35/197] Linking C static library app/libapp.a
    [36/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/cbprintf_complete.c.obj
    [37/197] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/onoff.c.obj
    [38/197] Building C object zephyr/CMakeFiles/zephyr.dir/soc/arm/nordic_nrf/validate_enabled_instances.c.obj
    [39/197] Building C object zephyr/CMakeFiles/zephyr.dir/home/bearsh/projects/nrf-msr175+/external/modules/crypto/tinycrypt/lib/source/aes_encrypt.c.obj
    [40/197] Building C object zephyr/CMakeFiles/zephyr.dir/home/bearsh/projects/nrf-msr175+/external/modules/crypto/tinycrypt/lib/source/cmac_mode.c.obj
    [41/197] Generating linker_zephyr_pre0.cmd
    [42/197] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/cpu_idle.S.obj
    [43/197] Building C object zephyr/CMakeFiles/zephyr.dir/soc/arm/nordic_nrf/validate_base_addresses.c.obj
    [44/197] Building C object zephyr/CMakeFiles/zephyr_pre0.dir/misc/empty_file.c.obj
    [45/197] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/nmi_on_reset.S.obj
    [46/197] Building C object zephyr/CMakeFiles/zephyr.dir/home/bearsh/projects/nrf-msr175+/external/nrfxlib/crypto/nrf_cc310_platform/src/nrf_cc3xx_platform_mutex_zephyr.c.obj
    [47/197] Building C object zephyr/CMakeFiles/zephyr.dir/home/bearsh/projects/nrf-msr175+/external/nrfxlib/crypto/nrf_cc310_platform/src/nrf_cc3xx_platform_abort_zephyr.c.obj
    [48/197] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/pm/device.c.obj
    [49/197] Building C object zephyr/drivers/console/CMakeFiles/drivers__console.dir/rtt_console.c.obj
    [50/197] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/pm/device_runtime.c.obj
    [51/197] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/irq_manage.c.obj
    [52/197] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/swap_helper.S.obj
    [53/197] Building C object zephyr/arch/common/CMakeFiles/isr_tables.dir/isr_tables.c.obj
    [54/197] Linking C static library zephyr/drivers/console/libdrivers__console.a
    [55/197] Linking C static library zephyr/libzephyr.a
    [56/197] Linking C static library zephyr/arch/common/libisr_tables.a
    [57/197] Building C object zephyr/arch/common/CMakeFiles/arch__common.dir/sw_isr_common.c.obj
    [58/197] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/isr_wrapper.S.obj
    [59/197] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/nmi.c.obj
    [60/197] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/fault_s.S.obj
    [61/197] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/swap.c.obj
    [62/197] Linking C static library zephyr/arch/common/libarch__common.a
    [63/197] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/fatal.c.obj
    [64/197] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/thread.c.obj
    [65/197] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/exc_exit.S.obj
    [66/197] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/reset.S.obj
    [67/197] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/prep_c.c.obj
    [68/197] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/__/common/tls.c.obj
    [69/197] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/__aeabi_read_tp.S.obj
    [70/197] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/vector_table.S.obj
    [71/197] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/fpu.c.obj
    [72/197] Linking C static library zephyr/arch/arch/arm/core/aarch32/libarch__arm__core__aarch32.a
    [73/197] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/irq_init.c.obj
    [74/197] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/scb.c.obj
    [75/197] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/thread_abort.c.obj
    [76/197] Building C object zephyr/soc/soc/arm/common/cortex_m/CMakeFiles/soc__arm__common__cortex_m.dir/arm_mpu_regions.c.obj
    [77/197] Building C object zephyr/lib/libc/common/CMakeFiles/lib__libc__common.dir/source/stdlib/abort.c.obj
    [78/197] Building C object zephyr/subsys/bluetooth/common/CMakeFiles/subsys__bluetooth__common.dir/addr.c.obj
    [79/197] Building C object zephyr/lib/libc/common/CMakeFiles/lib__libc__common.dir/source/stdlib/malloc.c.obj
    [80/197] Building C object zephyr/arch/arch/arm/core/aarch32/mpu/CMakeFiles/arch__arm__core__aarch32__mpu.dir/arm_mpu.c.obj
    [81/197] Building C object zephyr/lib/libc/picolibc/CMakeFiles/lib__libc__picolibc.dir/libc-hooks.c.obj
    [82/197] Linking C static library zephyr/soc/soc/arm/common/cortex_m/libsoc__arm__common__cortex_m.a
    [83/197] Building C object zephyr/arch/arch/arm/core/aarch32/mpu/CMakeFiles/arch__arm__core__aarch32__mpu.dir/arm_core_mpu.c.obj
    [84/197] Linking C static library zephyr/lib/libc/picolibc/liblib__libc__picolibc.a
    [85/197] Linking C static library zephyr/lib/libc/common/liblib__libc__common.a
    [86/197] Building C object zephyr/subsys/random/CMakeFiles/subsys__random.dir/rand32_xoshiro128.c.obj
    [87/197] Linking C static library zephyr/arch/arch/arm/core/aarch32/mpu/libarch__arm__core__aarch32__mpu.a
    [88/197] Building C object zephyr/subsys/random/CMakeFiles/subsys__random.dir/rand32_entropy_device.c.obj
    [89/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/uuid.c.obj
    [90/197] Building C object zephyr/soc/soc/arm/nordic_nrf/nrf52/CMakeFiles/soc__arm__nordic_nrf__nrf52.dir/soc.c.obj
    [91/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/addr.c.obj
    [92/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/long_wq.c.obj
    [93/197] Building C object zephyr/subsys/bluetooth/common/CMakeFiles/subsys__bluetooth__common.dir/rpa.c.obj
    [94/197] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/fault.c.obj
    [95/197] Linking C static library zephyr/subsys/random/libsubsys__random.a
    [96/197] Building C object zephyr/subsys/bluetooth/common/CMakeFiles/subsys__bluetooth__common.dir/bt_str.c.obj
    [97/197] Building C object zephyr/subsys/bluetooth/common/CMakeFiles/subsys__bluetooth__common.dir/dummy.c.obj
    [98/197] Linking C static library zephyr/soc/soc/arm/nordic_nrf/nrf52/libsoc__arm__nordic_nrf__nrf52.a
    [99/197] Linking C static library zephyr/arch/arch/arm/core/aarch32/cortex_m/libarch__arm__core__aarch32__cortex_m.a
    [100/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/buf.c.obj
    [101/197] Linking C static library zephyr/subsys/bluetooth/common/libsubsys__bluetooth__common.a
    [102/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/data.c.obj
    [103/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/hci_common.c.obj
    [104/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/adv.c.obj
    [105/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/ecc.c.obj
    [106/197] Building C object zephyr/subsys/net/CMakeFiles/subsys__net.dir/buf.c.obj
    [107/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/keys.c.obj
    [108/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/id.c.obj
    [109/197] Building C object zephyr/subsys/net/CMakeFiles/subsys__net.dir/buf_simple.c.obj
    [110/197] Linking C static library zephyr/subsys/net/libsubsys__net.a
    [111/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/l2cap.c.obj
    [112/197] Building C object zephyr/drivers/entropy/CMakeFiles/drivers__entropy.dir/entropy_nrf5.c.obj
    [113/197] Building C object zephyr/drivers/entropy/CMakeFiles/drivers__entropy.dir/entropy_bt_hci.c.obj
    [114/197] Building C object zephyr/drivers/clock_control/CMakeFiles/drivers__clock_control.dir/clock_control_nrf.c.obj
    [115/197] Building C object zephyr/drivers/entropy/CMakeFiles/drivers__entropy.dir/home/bearsh/projects/nrf-msr175+/external/nrf/drivers/entropy/entropy_cc3xx.c.obj
    [116/197] Linking C static library zephyr/drivers/entropy/libdrivers__entropy.a
    [117/197] Linking C static library zephyr/drivers/clock_control/libdrivers__clock_control.a
    [118/197] Building C object zephyr/drivers/pinctrl/CMakeFiles/drivers__pinctrl.dir/common.c.obj
    [119/197] Building C object zephyr/subsys/bluetooth/crypto/CMakeFiles/subsys__bluetooth__crypto.dir/bt_crypto.c.obj
    [120/197] Linking C static library zephyr/subsys/bluetooth/crypto/libsubsys__bluetooth__crypto.a
    [121/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/conn.c.obj
    [122/197] Building C object zephyr/drivers/gpio/CMakeFiles/drivers__gpio.dir/gpio_nrfx.c.obj
    [123/197] Building C object zephyr/drivers/timer/CMakeFiles/drivers__timer.dir/sys_clock_init.c.obj
    [124/197] Building C object zephyr/drivers/pinctrl/CMakeFiles/drivers__pinctrl.dir/pinctrl_nrf.c.obj
    [125/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/gatt.c.obj
    [126/197] Linking C static library zephyr/drivers/gpio/libdrivers__gpio.a
    [127/197] Linking C static library zephyr/drivers/pinctrl/libdrivers__pinctrl.a
    [128/197] Building C object zephyr/drivers/timer/CMakeFiles/drivers__timer.dir/nrf_rtc_timer.c.obj
    [129/197] Building C object modules/nrf/lib/multithreading_lock/CMakeFiles/..__nrf__lib__multithreading_lock.dir/multithreading_lock.c.obj
    [130/197] Building C object modules/nrf/lib/fatal_error/CMakeFiles/..__nrf__lib__fatal_error.dir/fatal_error.c.obj
    [131/197] Building C object modules/nrf/subsys/bluetooth/controller/CMakeFiles/..__nrf__subsys__bluetooth__controller.dir/hci_internal.c.obj
    [132/197] Linking C static library zephyr/drivers/timer/libdrivers__timer.a
    [133/197] Linking C static library modules/nrf/lib/multithreading_lock/lib..__nrf__lib__multithreading_lock.a
    [134/197] Linking C static library modules/nrf/lib/fatal_error/lib..__nrf__lib__fatal_error.a
    [135/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/smp.c.obj
    [136/197] Building C object modules/nrf/subsys/bluetooth/controller/CMakeFiles/..__nrf__subsys__bluetooth__controller.dir/crypto.c.obj
    [137/197] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/home/bearsh/projects/nrf-msr175+/external/modules/hal/nordic/nrfx/mdk/system_nrf52840.c.obj
    [138/197] Building C object modules/nrf/subsys/mpsl/fem/CMakeFiles/..__nrf__subsys__mpsl__fem.dir/api_init/mpsl_fem_api_init.c.obj
    [139/197] Building C object modules/nrf/subsys/mpsl/init/CMakeFiles/..__nrf__subsys__mpsl__init.dir/mpsl_init.c.obj
    [140/197] Linking C static library modules/nrf/subsys/mpsl/init/lib..__nrf__subsys__mpsl__init.a
    [141/197] Building C object modules/nrf/drivers/mpsl/clock_control/CMakeFiles/..__nrf__drivers__mpsl__clock_control.dir/nrfx_clock_mpsl.c.obj
    [142/197] Linking C static library modules/nrf/subsys/mpsl/fem/lib..__nrf__subsys__mpsl__fem.a
    [143/197] Building C object modules/nrf/drivers/hw_cc310/CMakeFiles/..__nrf__drivers__hw_cc310.dir/hw_cc310.c.obj
    [144/197] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/nrfx_glue.c.obj
    [145/197] Linking C static library modules/nrf/drivers/mpsl/clock_control/lib..__nrf__drivers__mpsl__clock_control.a
    [146/197] Building C object zephyr/drivers/spi/CMakeFiles/drivers__spi.dir/spi_nrfx_spis.c.obj
    [147/197] Building C object modules/segger/CMakeFiles/modules__segger.dir/home/bearsh/projects/nrf-msr175+/external/modules/debug/segger/SEGGER/SEGGER_RTT.c.obj
    [148/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/hci_core.c.obj
    [149/197] Building C object modules/nrf/subsys/bluetooth/controller/CMakeFiles/..__nrf__subsys__bluetooth__controller.dir/ecdh.c.obj
    [150/197] Linking C static library modules/nrf/drivers/hw_cc310/lib..__nrf__drivers__hw_cc310.a
    [151/197] Building C object zephyr/subsys/bluetooth/host/CMakeFiles/subsys__bluetooth__host.dir/att.c.obj
    [152/197] Building C object modules/nrf/subsys/bluetooth/controller/CMakeFiles/..__nrf__subsys__bluetooth__controller.dir/hci_driver.c.obj
    [153/197] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/home/bearsh/projects/nrf-msr175+/external/modules/hal/nordic/nrfx/helpers/nrfx_flag32_allocator.c.obj
    [154/197] Linking C static library zephyr/drivers/spi/libdrivers__spi.a
    [155/197] Linking C static library modules/nrf/subsys/bluetooth/controller/lib..__nrf__subsys__bluetooth__controller.a
    [156/197] Building C object modules/segger/CMakeFiles/modules__segger.dir/SEGGER_RTT_zephyr.c.obj
    [157/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/main_weak.c.obj
    [158/197] Linking C static library zephyr/subsys/bluetooth/host/libsubsys__bluetooth__host.a
    [159/197] Linking C static library modules/segger/libmodules__segger.a
    [160/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/init.c.obj
    [161/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/banner.c.obj
    [162/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/device.c.obj
    [163/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/version.c.obj
    [164/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/busy_wait.c.obj
    [165/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/errno.c.obj
    [166/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/idle.c.obj
    [167/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/kheap.c.obj
    [168/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mem_slab.c.obj
    [169/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/sem.c.obj
    [170/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mailbox.c.obj
    [171/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/fatal.c.obj
    [172/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/msg_q.c.obj
    [173/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/thread.c.obj
    [174/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/work.c.obj
    [175/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/stack.c.obj
    [176/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/queue.c.obj
    [177/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/system_work_q.c.obj
    [178/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/sched.c.obj
    [179/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mutex.c.obj
    [180/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/xip.c.obj
    [181/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/timer.c.obj
    [182/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/timeout.c.obj
    [183/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/poll.c.obj
    [184/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/condvar.c.obj
    [185/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/events.c.obj
    [186/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mempool.c.obj
    [187/197] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/home/bearsh/projects/nrf-msr175+/external/modules/hal/nordic/nrfx/drivers/src/nrfx_gpiote.c.obj
    [188/197] Building C object zephyr/kernel/CMakeFiles/kernel.dir/dynamic_disabled.c.obj
    [189/197] Linking C static library zephyr/kernel/libkernel.a
    [190/197] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/home/bearsh/projects/nrf-msr175+/external/modules/hal/nordic/nrfx/drivers/src/nrfx_spis.c.obj
    [191/197] Linking C static library modules/hal_nordic/nrfx/libmodules__hal_nordic__nrfx.a
    [192/197] Linking C executable zephyr/zephyr_pre0.elf
    [193/197] Generating linker.cmd
    [194/197] Generating isr_tables.c, isrList.bin
    [195/197] Building C object zephyr/CMakeFiles/zephyr_final.dir/misc/empty_file.c.obj
    [196/197] Building C object zephyr/CMakeFiles/zephyr_final.dir/isr_tables.c.obj
    [197/197] Linking C executable zephyr/zephyr.elf
    FAILED: zephyr/zephyr.elf zephyr/zephyr.map zephyr/zephyr.hex zephyr/zephyr.bin zephyr/zephyr.stat 
    : && ccache /home/bearsh/ncs/toolchains/7795df4459/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc  -gdwarf-4 zephyr/CMakeFiles/zephyr_final.dir/misc/empty_file.c.obj zephyr/CMakeFiles/zephyr_final.dir/isr_tables.c.obj -o zephyr/zephyr.elf  -fuse-ld=bfd  -T  zephyr/linker.cmd  -Wl,-Map=/home/bearsh/projects/nrf-msr175+/application/build/zephyr/zephyr_final.map  -Wl,--whole-archive  app/libapp.a  zephyr/libzephyr.a  zephyr/arch/common/libarch__common.a  zephyr/arch/arch/arm/core/aarch32/libarch__arm__core__aarch32.a  zephyr/arch/arch/arm/core/aarch32/cortex_m/libarch__arm__core__aarch32__cortex_m.a  zephyr/arch/arch/arm/core/aarch32/mpu/libarch__arm__core__aarch32__mpu.a  zephyr/lib/libc/picolibc/liblib__libc__picolibc.a  zephyr/lib/libc/common/liblib__libc__common.a  zephyr/soc/soc/arm/common/cortex_m/libsoc__arm__common__cortex_m.a  zephyr/soc/soc/arm/nordic_nrf/nrf52/libsoc__arm__nordic_nrf__nrf52.a  zephyr/subsys/random/libsubsys__random.a  zephyr/subsys/bluetooth/common/libsubsys__bluetooth__common.a  zephyr/subsys/bluetooth/host/libsubsys__bluetooth__host.a  zephyr/subsys/bluetooth/crypto/libsubsys__bluetooth__crypto.a  zephyr/subsys/net/libsubsys__net.a  zephyr/drivers/clock_control/libdrivers__clock_control.a  zephyr/drivers/console/libdrivers__console.a  zephyr/drivers/entropy/libdrivers__entropy.a  zephyr/drivers/gpio/libdrivers__gpio.a  zephyr/drivers/pinctrl/libdrivers__pinctrl.a  zephyr/drivers/spi/libdrivers__spi.a  zephyr/drivers/timer/libdrivers__timer.a  modules/nrf/lib/multithreading_lock/lib..__nrf__lib__multithreading_lock.a  modules/nrf/lib/fatal_error/lib..__nrf__lib__fatal_error.a  modules/nrf/subsys/bluetooth/controller/lib..__nrf__subsys__bluetooth__controller.a  modules/nrf/subsys/mpsl/init/lib..__nrf__subsys__mpsl__init.a  modules/nrf/subsys/mpsl/fem/lib..__nrf__subsys__mpsl__fem.a  modules/nrf/drivers/mpsl/clock_control/lib..__nrf__drivers__mpsl__clock_control.a  modules/nrf/drivers/hw_cc310/lib..__nrf__drivers__hw_cc310.a  modules/hal_nordic/nrfx/libmodules__hal_nordic__nrfx.a  modules/segger/libmodules__segger.a  -Wl,--no-whole-archive  zephyr/kernel/libkernel.a  zephyr/CMakeFiles/offsets.dir/./arch/arm/core/offsets/offsets.c.obj  -L"/home/bearsh/ncs/toolchains/7795df4459/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/thumb/v7e-m/nofp"  -L/home/bearsh/projects/nrf-msr175+/application/build/zephyr  -lgcc  -Wl,--print-memory-usage  zephyr/arch/common/libisr_tables.a  /home/bearsh/projects/nrf-msr175+/external/nrfxlib/crypto/nrf_oberon/lib/cortex-m4/soft-float/liboberon_3.0.13.a  -mcpu=cortex-m4  -mthumb  -mabi=aapcs  -mfp16-format=ieee  -Wl,--gc-sections  -Wl,--build-id=none  -Wl,--sort-common=descending  -Wl,--sort-section=alignment  -Wl,-u,_OffsetAbsSyms  -Wl,-u,_ConfigAbsSyms  -nostdlib  -static  -Wl,-X  -Wl,-N  -Wl,--orphan-handling=warn  -Wl,-no-pie  -DPICOLIBC_INTEGER_PRINTF_SCANF  /home/bearsh/projects/nrf-msr175+/external/nrfxlib/crypto/nrf_cc310_platform/lib/cortex-m4/soft-float/no-interrupts/libnrf_cc310_platform_0.9.18.a  /home/bearsh/projects/nrf-msr175+/external/nrfxlib/softdevice_controller/lib/cortex-m4/soft-float/libsoftdevice_controller_peripheral.a  /home/bearsh/projects/nrf-msr175+/external/nrfxlib/mpsl/fem/common/lib/cortex-m4/soft-float/libmpsl_fem_common.a  /home/bearsh/projects/nrf-msr175+/external/nrfxlib/mpsl/fem/nrf21540_gpio/lib/cortex-m4/soft-float/libmpsl_fem_nrf21540_gpio.a  /home/bearsh/projects/nrf-msr175+/external/nrfxlib/mpsl/fem/nrf21540_gpio_spi/lib/cortex-m4/soft-float/libmpsl_fem_nrf21540_gpio_spi.a  /home/bearsh/projects/nrf-msr175+/external/nrfxlib/mpsl/fem/simple_gpio/lib/cortex-m4/soft-float/libmpsl_fem_simple_gpio.a  /home/bearsh/projects/nrf-msr175+/external/nrfxlib/mpsl/lib/cortex-m4/soft-float/libmpsl.a  --specs=picolibc.specs  -lc  -lgcc && cd /home/bearsh/projects/nrf-msr175+/application/build/zephyr && /home/bearsh/ncs/toolchains/7795df4459/usr/local/bin/cmake -E copy zephyr_final.map zephyr.map && /home/bearsh/ncs/toolchains/7795df4459/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-objcopy --gap-fill 0xff --output-target=ihex --remove-section=.comment --remove-section=COMMON --remove-section=.eh_frame zephyr.elf zephyr.hex && /home/bearsh/ncs/toolchains/7795df4459/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-objcopy --gap-fill 0xff --output-target=binary --remove-section=.comment --remove-section=COMMON --remove-section=.eh_frame zephyr.elf zephyr.bin && /home/bearsh/ncs/toolchains/7795df4459/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-readelf -e zephyr.elf > zephyr.stat && /home/bearsh/ncs/toolchains/7795df4459/usr/local/bin/python3.8 /home/bearsh/projects/nrf-msr175+/external/zephyr/scripts/build/check_init_priorities.py --build-dir /home/bearsh/projects/nrf-msr175+/application/build/zephyr/.. --edt-pickle /home/bearsh/projects/nrf-msr175+/application/build/zephyr/edt.pickle
    Memory region         Used Size  Region Size  %age Used
               FLASH:      152520 B         1 MB     14.55%
                 RAM:       32360 B       256 KB     12.34%
            IDT_LIST:          0 GB         2 KB      0.00%
    Traceback (most recent call last):
      File "/home/bearsh/projects/nrf-msr175+/external/zephyr/scripts/build/check_init_priorities.py", line 361, in <module>
        sys.exit(main(sys.argv[1:]))
      File "/home/bearsh/projects/nrf-msr175+/external/zephyr/scripts/build/check_init_priorities.py", line 346, in main
        validator = Validator(args.build_dir, args.edt_pickle, log)
      File "/home/bearsh/projects/nrf-msr175+/external/zephyr/scripts/build/check_init_priorities.py", line 217, in __init__
        raise ValueError(
    ValueError: ERROR: device 56 (/soc/spi@40003000) already defined
    ninja: build stopped: subcommand failed.
    
    4643.zephyr.dts

    here we go. I've also added the resulting dts file from the build folder

  • Hi,

    I can't see anything standing out in your board files.

    Since the error does not occur until after build, it could be something in the linking that causes this.

    I noticed in your build log that a SPI library for FEM control of nRF21540 (libmpsl_fem_nrf21540_gpio_spi.a Is this used and enabled in your application?

    Have you tried building other samples for your boards, and do you see the same error then?

    Best regards,
    Jørgen

  • Hi Jørgen

    Thanks for your help! It seems the clean process did not clean all object files in the build directory which got picked up by the check_init_priorities.py script. Removing them solved the problem... Rolling eyes (I didn't expect the sript to 'simply' scan object files...)

    Regards

Related