We are using DM642 DSP EMAC to send/receive Ethernet packets and have the following questions about the functionality of EMAC Tx control :
1) After all the packets in Tx channels are transmitted, will the Tx stop automatically? If it does, how do I restart the EMAC Tx Controller? If it does not, how do I stop the Tx?
2) As I understand, both CPU and EMAC can update the EMAC internal memory at the same time, which can cause race condition. Is there a way to lock the internal memory temporarily so CPU can update the descriptor list safely?
3) In the middle of packet transmission, if there is Tx error such as Tx Underrun, how do I retransmit this packet so the transmission sequence will not be out of order?