SWCU192 November 2021 CC1312R7 , CC1352P7 , CC2652P7 , CC2652R7
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.