I have this configuration:
&pinctrl { // ism330bx ism330bx_default: ism330bx_default { group1 { psels = <NRF_PSEL(SPIM_SCK, 1, 11)>, <NRF_PSEL(SPIM_MOSI, 1, 12)>, <NRF_PSEL(SPIM_MISO, 1, 13)>; }; }; ism330bx_sleep: ism330bx_sleep { group1 { psels = <NRF_PSEL(SPIM_SCK, 1, 11)>, <NRF_PSEL(SPIM_MOSI, 1, 12)>, <NRF_PSEL(SPIM_MISO, 1, 13)>; low-power-enable; }; }; // lis3mdl lis3mdl_default: lis3mdl_default { group1 { psels = <NRF_PSEL(SPIM_SCK, 0, 3)>, <NRF_PSEL(SPIM_MOSI, 0, 2)>, <NRF_PSEL(SPIM_MISO, 0, 29)>; }; }; lis3mdl_sleep: lis3mdl_sleep { group1 { psels = <NRF_PSEL(SPIM_SCK, 0, 3)>, <NRF_PSEL(SPIM_MOSI, 0, 2)>, <NRF_PSEL(SPIM_MISO, 0, 29)>; low-power-enable; }; }; };
Can I run them on the same SPI, like this?:
#include </home/gbrandwine/dev/augury-ep/drivers/sensor/st/ism330bx/zephyr/include/ism330bx_defs.h> // TODO: Solve this path &spi1 { status = "okay"; pinctrl-0 = <&ism330bx_default>, <&lis3mdl_default>; pinctrl-1 = <&ism330bx_sleep>, <&lis3mdl_sleep>; pinctrl-names = "default", "sleep"; compatible = "nordic,nrf-spim"; cs-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>, <&gpio1 4 GPIO_ACTIVE_LOW>; ism330bx@0 { compatible = "st,ism330bx"; reg = <0>; accel-range = <ISM330BX_DT_FS_8G>; accel-odr = <ISM330BX_DT_ODR_AT_60Hz>; gyro-range = <ISM330BX_DT_FS_4000DPS>; gyro-odr = <ISM330BX_DT_ODR_AT_60Hz>; int1-gpios = <&gpio1 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>; // int2_gpios = <&gpio1 5 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>; power_resources = <&boost_on>, <&sensors_on>; // boost_on should be enabled before sensors_on spi-max-frequency = <8000000>; // accel-range = <0>; }; lis3mdl: lis3mdl@1 { compatible = "st,augu_lis3mdl"; reg = <1>; irq-gpios = <&gpio0 27 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>; label = "AUGU_LIS3MDL"; power_resources = <&boost_on>, <&sensors_on>; // boost_on should be enabled before sensors_on spi-max-frequency = <8000000>; }; };
Thanks you.
Gal