Tool/software:
I am using the spi_controller_fifo_dma_interrupts example code with a few small changes. Best I can tell you set up the TX length to be the number of bytes to send and the RX Length to be the number of bytes to receive. I am pretty sure I had it working as expected. I made some code changes to turn the example into a function where the TX and RX lengths are passed in and now it will not receive and hangs up waiting for the DL_SPI_IIDX_DMA_DONE_RX interrupt. I can fix it by adding the RX Length to the TX length thereby forcing more SPI clocks but I did not have to do that before so pretty sure I broke something.
So do I have it right that if I tell the DMA controller to receive 10 bytes that it will automatically generate the SPI clocks for that data? Or do I have to manually create the clocks needed to clock the data our from the peripheral by adding dummy bytes to the TX length?
Thanks!
Chris