Good day,
I am currently working on adding support for the nRF54l15 SoC and adding support for multiple imu sensors to be connected at once. However, I have been unable to get any form of spi to work on our custom board. When running the transceive function I get this error: spi_nrfx_spim: configure: Failed to initialize nrfx driver: 0bad0004.
Devicetree Configuration
&pinctrl {
/omit-if-no-ref/ spi00_default: spi00_default {
group1 {
psels = <NRF_PSEL(SPIM_SCK, 2, 1)>,
<NRF_PSEL(SPIM_MOSI, 2, 2)>;
};
group2 {
psels = <NRF_PSEL(SPIM_MISO, 2, 4)>;
bias-pull-up;
};
};
/omit-if-no-ref/ spi00_sleep: spi00_sleep {
group1 {
psels = <NRF_PSEL(SPIM_SCK, 2, 1)>,
<NRF_PSEL(SPIM_MOSI, 2, 2)>,
<NRF_PSEL(SPIM_MISO, 2, 4)>;
low-power-enable;
};
};
};
&spi00 {
status = "okay";
compatible = "nordic,nrf-spim";
pinctrl-0 = <&spi00_default>;
pinctrl-1 = <&spi00_sleep>;
pinctrl-names = "default", "sleep";
imu_spi: imu_spi@0 {
status = "okay";
compatible = "vnd,spi-device";
label = "imu-spi";
reg = <0>;
spi-max-frequency = <DT_FREQ_M(16)>;
};
};
I'd like to note that there are multiple imu devices connected and we control their CS via a shift register. I have confirmed that only one CS is low when performing read/write over spi. I can provide more info if needed.