AnsweredAssumed Answered

Timeout on chained TX Link Port DMA

Question asked by Tom00 on Mar 14, 2011
Latest reply on Apr 19, 2011 by DeepV

Hello!

 

For a fast communication between a FPGA and a 21469 I use the Link Port. Normally this works fine, but I have problems with the error handling. For example I start a chained TX DMA over Link Port with 100 words and after 10 words the receiver Link Port controller has a problem and stops/holds the communication. If the communication is stopped too long (timeout), I would like to reset the both link port controllers.

 

My question is: How can I reset the LP transmitter with an uncompleted chained DMA?

I tried to disable and re-enable the LP, clear the chain pointer, clear the DMA length, but I just got a LP hung errors.

 

            /* disable LCTL1 */

            (*pLCTL1) = 0x0;

            /* clear chain pointer */ 

            // (*pCPLB1) = 0;         

            for(i=0;i<100;i++);

            /* enable LP1 for chained Tx DMA */

            (*pLCTL1) |= (LCHEN | LDEN | LTRAN | LEN |DMACH_IRPT_MSK| LP_BHD);

 

-Thomas

Outcomes