Not understanding how to enable peripherals in devicetree


Jason Bens
 

Hi,

 

I’m a complete newcomer to zephyr and devicetree, and I’m running into some trouble trying to enable the I2S peripheral on the nRF5340dk board.  I’ve enabled both the I2S driver (Modules->hal_nordic->nrfx_drivers) and the I2S bus drivers (Device Drivers) in menuconfig.  I’ve also added “CONFIG_I2S=y” to my top-level prj.conf.  Despite this, when I check zephyr.dts in my build directory, the i2s0 device is disabled.

 

Zephyr.dts excerpt:

i2s0: i2s@28000 {

compatible = "nordic,nrf-i2s";

     #address-cells = < 0x1 >;

     #size-cells = < 0x0 >;

     reg = < 0x28000 0x1000 >;

     interrupts = < 0x28 0x1 >;

     status = "disabled";

     label = "I2S_0";

};

 

I’ve checked the i2s litex sample and read through the docs, but I’m not finding a solution.  Am I missing a step somewhere to enable this device? Do I need a devicetree overlay to explicitly enable i2s?  If it’s relevant, I’ve been using the Nordic edition of SEGGER Embedded studio to build the project, as per Nordic’s nRF Connect toolchain documentation.

 

Thanks,

 

  • Jason

Join users@lists.zephyrproject.org to automatically receive all group messages.