Forum Discussion
Altera_Forum
Honored Contributor
14 years agoStopping SGDMA Transfer
Implementing NDIS 5.1 driver for WinXPe on triple speed ethernet product. Windows likes to reset the NIC when it loses patience with something, but there appears to be no way to stop an SGDMA rx tran...
Altera_Forum
Honored Contributor
14 years agoI'm fairly certain there is no way to stop it while it's performing a block transfer. Also triggering a reset might be problematic if the SGDMA is in the middle of a data read/write (especially if it's in the middle of a burst). Avalon doesn't allow a master to early terminate so resetting the SGDMA in the middle of a transfer potentially can cause the fabric to enter an unknown state.
I guess a workaround would be to insert a little widget into the streaming data path that you can use to inject EOP into the data stream to get the SGDMA to stop working on the descriptor (after you wrote to the stop register). That way you don't have to trigger a soft reset and cross your fingers there were no MM transactions in flight.