Example code does not build on (recent) Zephyr
I tried to build the Zephyr examples in this repo. I got similar issues across the examples, seems to be some issue with the SPI code. Could this be a version incompatibility? Would be helpful if the examples would build
Build log output:
-- west build: build configuration:
source directory: D:\Code\papyr\code\zephyr\hello_papyr
build directory: D:\Code\papyr\code\zephyr\hello_papyr\build
BOARD: nrf52840_papyr (origin: CMakeCache.txt)
-- west build: building application
[1/30] Linking C static library zephyr\drivers\gpio\libdrivers__gpio.a
[2/30] Linking C static library zephyr\modules\nordic\lib..__modules__hal__nordic.a
[3/30] Building C object zephyr/CMakeFiles/zephyr_prebuilt.dir/misc/empty_file.c.obj
[4/30] Building C object zephyr/drivers/spi/CMakeFiles/drivers__spi.dir/spi_nrfx_spim.c.obj
FAILED: zephyr/drivers/spi/CMakeFiles/drivers__spi.dir/spi_nrfx_spim.c.obj
C:\dev\gnu_arm_embedded\bin\arm-none-eabi-gcc.exe -DBUILD_VERSION=zephyr-v2.1.0-581-g4e135d76a3c2 -DKERNEL -DNRF52840_XXAA -D_FORTIFY_SOURCE=2 -D__PROGRAM_START -D__ZEPHYR_SUPERVISOR__ -D__ZEPHYR__=1 -ID:/Code/zephyrproject/zephyr/include -ID:/Code/zephyrproject/zephyr/include/drivers -Izephyr/include/generated -ID:/Code/zephyrproject/zephyr/soc/arm/nordic_nrf/nrf52 -ID:/Code/zephyrproject/zephyr/ext/hal/cmsis/Core/Include -ID:/Code/zephyrproject/modules/hal/nordic/nrfx -ID:/Code/zephyrproject/modules/hal/nordic/nrfx/drivers/include -ID:/Code/zephyrproject/modules/hal/nordic/nrfx/mdk -ID:/Code/zephyrproject/modules/hal/nordic/. -isystem D:/Code/zephyrproject/zephyr/lib/libc/minimal/include -isystem c:/dev/gnu_arm_embedded/bin/../lib/gcc/arm-none-eabi/9.2.1/include -isystem c:/dev/gnu_arm_embedded/bin/../lib/gcc/arm-none-eabi/9.2.1/include-fixed -Os -imacrosD:/Code/papyr/code/zephyr/hello_papyr/build/zephyr/include/generated/autoconf.h -ffreestanding -fno-common -g -mthumb -mcpu=cortex-m4 -imacrosD:/Code/zephyrproject/zephyr/include/toolchain/zephyr_stdint.h -Wall -Wformat -Wformat-security -Wno-format-zero-length -Wno-main -Wno-address-of-packed-member -Wno-pointer-sign -Wpointer-arith -Wno-unused-but-set-variable -Werror=implicit-int -fno-asynchronous-unwind-tables -fno-pie -fno-pic -fno-strict-overflow -fno-reorder-functions -fno-defer-pop -fmacro-prefix-map=D:/Code/zephyrproject/zephyr=ZEPHYR_BASE -ffunction-sections -fdata-sections -mabi=aapcs -march=armv7e-m -std=c99 -nostdinc -MD -MT zephyr/drivers/spi/CMakeFiles/drivers__spi.dir/spi_nrfx_spim.c.obj -MF zephyr\drivers\spi\CMakeFiles\drivers__spi.dir\spi_nrfx_spim.c.obj.d -o zephyr/drivers/spi/CMakeFiles/drivers__spi.dir/spi_nrfx_spim.c.obj -c D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c
In file included from D:/Code/zephyrproject/zephyr/include/arch/arm/aarch32/arch.h:27,
from D:/Code/zephyrproject/zephyr/include/arch/cpu.h:17,
from D:/Code/zephyrproject/zephyr/include/kernel_includes.h:34,
from D:/Code/zephyrproject/zephyr/include/kernel.h:17,
from D:/Code/zephyrproject/zephyr/include/device.h:10,
from D:/Code/zephyrproject/zephyr/include/drivers/spi.h:24,
from D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:7:
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c: In function 'spi_1_init':
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:393:8: error: 'DT_NORDIC_NRF_SPIM_SPI_1_IRQ_0_PRIORITY' undeclared (first use in this function); did you mean 'DT_NORDIC_NRF_SPI_SPI_1_IRQ_0_PRIORITY'?
393 | DT_NORDIC_NRF_SPIM_SPI_##idx##_IRQ_0_PRIORITY, \
| ^~~~~~~~~~~~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/include/arch/arm/aarch32/irq.h:82:32: note: in definition of macro 'ARCH_IRQ_CONNECT'
82 | z_arm_irq_priority_set(irq_p, priority_p, flags_p); \
| ^~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:392:3: note: in expansion of macro 'IRQ_CONNECT'
392 | IRQ_CONNECT(NRFX_IRQ_NUMBER_GET(NRF_SPIM##idx), \
| ^~~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:432:1: note: in expansion of macro 'SPI_NRFX_SPIM_DEVICE'
432 | SPI_NRFX_SPIM_DEVICE(1);
| ^~~~~~~~~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:393:8: note: each undeclared identifier is reported only once for each function it appears in
393 | DT_NORDIC_NRF_SPIM_SPI_##idx##_IRQ_0_PRIORITY, \
| ^~~~~~~~~~~~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/include/arch/arm/aarch32/irq.h:82:32: note: in definition of macro 'ARCH_IRQ_CONNECT'
82 | z_arm_irq_priority_set(irq_p, priority_p, flags_p); \
| ^~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:392:3: note: in expansion of macro 'IRQ_CONNECT'
392 | IRQ_CONNECT(NRFX_IRQ_NUMBER_GET(NRF_SPIM##idx), \
| ^~~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:432:1: note: in expansion of macro 'SPI_NRFX_SPIM_DEVICE'
432 | SPI_NRFX_SPIM_DEVICE(1);
| ^~~~~~~~~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c: At top level:
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:406:17: error: 'DT_NORDIC_NRF_SPIM_SPI_1_SCK_PIN' undeclared here (not in a function); did you mean 'DT_NORDIC_NRF_SPI_SPI_1_SCK_PIN'?
406 | .sck_pin = DT_NORDIC_NRF_SPIM_SPI_##idx##_SCK_PIN, \
| ^~~~~~~~~~~~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:432:1: note: in expansion of macro 'SPI_NRFX_SPIM_DEVICE'
432 | SPI_NRFX_SPIM_DEVICE(1);
| ^~~~~~~~~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:407:17: error: 'DT_NORDIC_NRF_SPIM_SPI_1_MOSI_PIN' undeclared here (not in a function); did you mean 'DT_NORDIC_NRF_SPI_SPI_1_MOSI_PIN'?
407 | .mosi_pin = DT_NORDIC_NRF_SPIM_SPI_##idx##_MOSI_PIN, \
| ^~~~~~~~~~~~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:432:1: note: in expansion of macro 'SPI_NRFX_SPIM_DEVICE'
432 | SPI_NRFX_SPIM_DEVICE(1);
| ^~~~~~~~~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:408:17: error: 'DT_NORDIC_NRF_SPIM_SPI_1_MISO_PIN' undeclared here (not in a function); did you mean 'DT_NORDIC_NRF_SPI_SPI_1_MISO_PIN'?
408 | .miso_pin = DT_NORDIC_NRF_SPIM_SPI_##idx##_MISO_PIN, \
| ^~~~~~~~~~~~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:432:1: note: in expansion of macro 'SPI_NRFX_SPIM_DEVICE'
432 | SPI_NRFX_SPIM_DEVICE(1);
| ^~~~~~~~~~~~~~~~~~~~
In file included from D:/Code/zephyrproject/zephyr/include/drivers/spi.h:24,
from D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:7:
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:419:9: error: 'DT_NORDIC_NRF_SPIM_SPI_1_LABEL' undeclared here (not in a function); did you mean 'DT_NORDIC_NRF_SPI_SPI_1_LABEL'?
419 | DT_NORDIC_NRF_SPIM_SPI_##idx##_LABEL, \
| ^~~~~~~~~~~~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/include/device.h:106:11: note: in definition of macro 'DEVICE_AND_API_INIT'
106 | .name = drv_name, .init = (init_fn), \
| ^~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:418:2: note: in expansion of macro 'DEVICE_DEFINE'
418 | DEVICE_DEFINE(spi_##idx, \
| ^~~~~~~~~~~~~
D:/Code/zephyrproject/zephyr/drivers/spi/spi_nrfx_spim.c:432:1: note: in expansion of macro 'SPI_NRFX_SPIM_DEVICE'
432 | SPI_NRFX_SPIM_DEVICE(1);
| ^~~~~~~~~~~~~~~~~~~~
[5/30] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mem_slab.c.obj
[6/30] Building C object zephyr/kernel/CMakeFiles/kernel.dir/stack.c.obj
[7/30] Building C object zephyr/kernel/CMakeFiles/kernel.dir/sem.c.obj
[8/30] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mutex.c.obj
[9/30] Building C object zephyr/kernel/CMakeFiles/kernel.dir/init.c.obj
[10/30] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mailbox.c.obj
[11/30] Building C object zephyr/kernel/CMakeFiles/kernel.dir/msg_q.c.obj
[12/30] Building C object zephyr/kernel/CMakeFiles/kernel.dir/pipes.c.obj
[13/30] Building C object zephyr/kernel/CMakeFiles/kernel.dir/sched.c.obj
ninja: build stopped: subcommand failed.