This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Problem using 3 instances of SPIM on NRF52840 Zephyr RTOS

When enabling 3 instances of SPIM (1,2,3) on NRF52840 the application doesn't start at all.

Weirdly however, the application works fine when SPI3 takes SPIM3 and the rest SPI0, SPI2 respectively, or when SPIM1 and SPIM2 are enabled and "SPI3 instance" is disabled

The simultaneous sending on 3 SPI, which I need for my application can only happen if all are SPIM thanks to easyDMA

snippets:

prj.conf:

# SPI
CONFIG_SPI=y
CONFIG_SPI_ASYNC=y
CONFIG_SPI_INIT_PRIORITY=70
CONFIG_SPI_0=n
CONFIG_SPI_1=y
CONFIG_SPI_2=y
CONFIG_SPI_3=y
CONFIG_SPI_NRFX=y
CONFIG_SPI_1_NRF_SPIM=y
CONFIG_SPI_1_OP_MODES=1
CONFIG_SPI_1_NRF_ORC=0x00
CONFIG_SPI_2_NRF_SPIM=y
CONFIG_SPI_2_OP_MODES=1
CONFIG_SPI_2_NRF_ORC=0x00
CONFIG_SPI_3_NRF_SPIM=y
CONFIG_SPI_3_OP_MODES=1
CONFIG_SPI_3_NRF_ORC=0x00

.overlay file:

&spi1{
compatible = "nordic,nrf-spim";
status = "okay";
};
&spi2{
compatible = "nordic,nrf-spim";
status = "okay";
};
&spi3{
compatible = "nordic,nrf-spim";
status = "okay";
};

Help is highly appreciated :).

Parents Reply Children
No Data
Related