SWCU191 February 2022 CC1311P3 , CC1311R3 , CC2651P3 , CC2651R3 , CC2651R3SIPA
The DMA operates on blocks of memory. Each input and output DMA memory block contains the input and output sample words, respectively, for I2S:AIFDMACFG.END_FRAME_IDX + 1 frames.
Writing a nonzero value to I2S:AIFDMACFG.END_FRAME_IDX initializes the DMA and prepares it to be started. Writing zero to I2S:AIFDMACFG.END_FRAME_IDX disables the DMA and resets the serial audio interface.
If input ADx pins are used, software must write memory block start addresses for input DMA to I2S:AIFINPTRNEXT. The current input DMA memory location can be observed in I2S:AIFINPTR.
If output ADx pins are used, software must write memory block start addresses for output DMA to I2S:AIFOUTPTRNEXT. The current output DMA memory location can be observed in I2S:AIFOUTPTR.
This writing operation_or_DMA operation allows the software to implement sample block ring buffers in memory with an arbitrary number of blocks for input and output samples.