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
Parents Reply Children
  • 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