--- Quote Start ---
Unfortunately it doesn't have that type of functionality, my plans were to add a frontend that would provide this type of behavior instead using linked-list descriptors. If you set the park on multiple descriptors this is the type of behavior you should expect (assume the mSGDMA is sitting idle before these steps):
1) descriptor# 1 has park bit set
2) mSGDMA continues to keep reusing descriptor# 1
3) descriptor# 2 has been written with the part bit set
4) mSGDMA switches over to using descriptor# 2 until another descriptor is written
With the existing hardware the only way to ping-pong between two buffers is that you need to keep writting the two descriptors over and over to the dispatcher. You could make a frontend hardware block that you write to the two descriptors and it manages stuffing the descriptors into the dispatcher. If you made this custom hardware master width the same as the dispatcher descriptor port issueing the descriptors should be really easy to do using a single write operation.
--- Quote End ---
Thank you for your reply! We have already implemented the descriptor recycler. I only proposed the circular FIFO as an enhancement suggestion. Who will be maintaining the mSGDMA moving forward, now that it will be pulled into the Altera Embedded IP suite?