AXI_DMA S2MM in scatter gather mode sends data but doesn't complete correctly
I have a test design using the AXI_DMA core in scatter gather mode. In the design the MM2S is simply directly looped back to S2MM. I pre-load some test data into a memory buffer, create two descriptors (one for S2MM and one for MM2S) and start S2MM DMA first and then MM2S DMA. The MM2S DMA finishes correctly but the S2MM DMA never sets the completion bit in the descriptor or updates the received counter but I can verify that the data has actually been sent. If I ask it to receive less data than the MM2S DMA sends then the descriptor gets updated but there's still no completion interrupt. What am I doing wrong?