AR# 38616: 12.3 EDK, MPMC - SDMA will not assert TX source ready until the TX destination is ready
12.3 EDK, MPMC - SDMA will not assert TX source ready until the TX destination is ready
The Local Link specification says that the order of assertion of the SRC_RDY_N signal and DST_RDY_N signal does not matter.
I have designed a custom Local Link peripheral. The peripheral will not assert destination ready (the peripheral is ready to receive data) until the source is ready (the transmitter is ready to transmit data) for a transmit operation.
The peripheral is connected to the Local Link interface of the SDMA on MPMC. After the software starts the SDMA transmitting, there are no transactions on the Local Link interface?
What could be wrong?
SDMA will not assert Tx_Src_Rdy signal until the TX_Dst_Rdy is asserted. Since the peripheral will not assert destination ready until the source is ready, this will cause a deadlock.
In order to use a Local Link peripheral with SDMA, the destination ready must be asserted first for a transmit operation.