I am rewriting our full duplex I2S driver for the 70x and try to do this and still use the adi drivers.
the standard way seems to enable dma mode and then use adi_sport_SubmitBuffer() whenever a buffer have been transmitted. This generates some overhead submitting the same two buffers over and over again and it also introduces the risk of data starving if the callback is not fast enough.
Is there a way to tell the sport driver to either
a) use two circularly linked dma buffers that run autonomously.
b) use a single fractional dma buffer that generates x interrupts and links to itself.
What would be the best way to accomplish this without throwing out the adi sport drivers?